Changeset 12288


Ignore:
Timestamp:
Jan 23, 2019 5:14:11 PM (11 months ago)
Author:
mjohnsson
Message:

#5726 fixing file formatting removing lots of tabs.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/dev-5726-orginal-annotation/Compiler/ModelicaFrontEnd/src/jastadd/instance/InstanceTree.jrag

    r11911 r12288  
    162162
    163163        public Environment clone() {
    164             Environment env = new Environment();
    165             env.addAll(this);
    166             return env;
    167         }
    168        
    169         /**
    170         * TODO: implement!
    171         */
     164            Environment env = new Environment();
     165            env.addAll(this);
     166            return env;
     167        }
     168
     169        /**
     170        * TODO: implement!
     171        */
    172172        public Environment peel(String name) {
    173             return new Environment();
     173            return new Environment();
    174174        }
    175175
     
    213213aspect InstModifications{
    214214
    215     public ArrayList<InstModification> InstModification.expand() {
    216         ArrayList<InstModification> l = new ArrayList<InstModification>();
    217         l.add(this);
    218         return l;
    219     }
    220 
    221     public ArrayList<InstModification> InstCompleteModification.expand() {
    222         ArrayList<InstModification> l = new ArrayList<InstModification>();
    223         for (InstModification im : getInstClassModification().getInstArguments())
    224             l.add(im);
    225         if (hasInstValueModification())
    226             l.add(getInstValueModification());
    227         return l;   
    228        
    229     }
    230 
    231     public ArrayList<InstModification> InstClassModification.expand() {
    232         ArrayList<InstModification> l = new ArrayList<InstModification>();
    233         for (InstModification im : getInstArguments())
    234             l.add(im);
    235         return l;   
    236     }
    237 
    238     public abstract InstModification SrcModification.newInstModification();
    239     public InstCompleteModification SrcCompleteModification.newInstModification() {
    240         InstCompleteModification icm = new InstCompleteModification(this,getSrcClassModification().newInstModification(),new Opt());
     215    public ArrayList<InstModification> InstModification.expand() {
     216        ArrayList<InstModification> l = new ArrayList<InstModification>();
     217        l.add(this);
     218        return l;
     219    }
     220
     221    public ArrayList<InstModification> InstCompleteModification.expand() {
     222        ArrayList<InstModification> l = new ArrayList<InstModification>();
     223        for (InstModification im : getInstClassModification().getInstArguments())
     224            l.add(im);
     225        if (hasInstValueModification())
     226            l.add(getInstValueModification());
     227        return l;   
     228   
     229    }
     230
     231    public ArrayList<InstModification> InstClassModification.expand() {
     232        ArrayList<InstModification> l = new ArrayList<InstModification>();
     233        for (InstModification im : getInstArguments())
     234            l.add(im);
     235        return l;   
     236    }
     237
     238    public abstract InstModification SrcModification.newInstModification();
     239    public InstCompleteModification SrcCompleteModification.newInstModification() {
     240        InstCompleteModification icm = new InstCompleteModification(this,getSrcClassModification().newInstModification(),new Opt());
    241241        if (hasSrcValueModification())
    242             icm.setInstValueModification(getSrcValueModification().newInstModification());
     242            icm.setInstValueModification(getSrcValueModification().newInstModification());
    243243        return icm;
    244     }   
    245     public InstValueModification SrcValueModification.newInstModification() {
    246         return new InstValueModification(this);
    247     }
    248     public InstClassModification SrcClassModification.newInstModification () {
    249         List l = new List();
    250         for (SrcArgument a : getSrcArguments()) {
    251             l.add(a.newInstModification());
    252         }
    253         return new InstClassModification(this,l);
    254     }
     244    }
     245    public InstValueModification SrcValueModification.newInstModification() {
     246        return new InstValueModification(this);
     247    }
     248    public InstClassModification SrcClassModification.newInstModification () {
     249        List l = new List();
     250        for (SrcArgument a : getSrcArguments()) {
     251            l.add(a.newInstModification());
     252        }
     253        return new InstClassModification(this,l);
     254    }
    255255
    256256    public InstComponentModification SrcComponentModification.newInstModification() {
     
    278278    }
    279279
    280     public InstComponentRedeclare SrcComponentRedeclare.newInstModification() {
    281         InstComponentRedeclare icr = new InstComponentRedeclare(this, getEach(), getFinal(), getName().newInstAccess());
    282         icr.setLocation(this);
    283         return icr;
    284     }
     280    public InstComponentRedeclare SrcComponentRedeclare.newInstModification() {
     281        InstComponentRedeclare icr = new InstComponentRedeclare(this, getEach(), getFinal(), getName().newInstAccess());
     282        icr.setLocation(this);
     283        return icr;
     284    }
    285285    public InstComponentRedeclare SrcComponentDecl.newInstModification() {
    286286        if (!hasRedeclare()) {
     
    299299    }
    300300
    301     public InstClassRedeclare SrcClassRedeclare.newInstModification() {
    302         InstClassRedeclare icr = new InstClassRedeclare(this, getEach(), getFinal(), getName().newInstAccess());
    303         icr.setLocation(this);
    304         return icr;
    305     }
     301    public InstClassRedeclare SrcClassRedeclare.newInstModification() {
     302        InstClassRedeclare icr = new InstClassRedeclare(this, getEach(), getFinal(), getName().newInstAccess());
     303        icr.setLocation(this);
     304        return icr;
     305    }
    306306
    307307
     
    448448    }
    449449
    450     /**
    451     * Return OriginalInstClass for nodes that have it, null otherwise.
    452     */
    453     syn InstClassDecl InstClassDecl.originalInstClass()      = null;
    454     eq InstReplacingShortClassDecl.originalInstClass()       = getOriginalInstClass();
    455     eq InstReplacingSimpleShortClassDecl.originalInstClass() = getOriginalInstClass();
    456     eq InstReplacingFullClassDecl.originalInstClass()        = getOriginalInstClass();
     450    /**
     451    * Return OriginalInstClass for nodes that have it, null otherwise.
     452    */
     453    syn InstClassDecl InstClassDecl.originalInstClass()      = null;
     454    eq InstReplacingShortClassDecl.originalInstClass()       = getOriginalInstClass();
     455    eq InstReplacingSimpleShortClassDecl.originalInstClass() = getOriginalInstClass();
     456    eq InstReplacingFullClassDecl.originalInstClass()        = getOriginalInstClass();
    457457
    458458    syn boolean InstClassDecl.hasInstClassModification() = false;
     
    509509        myInstClassDecl().getMergedEnvironment().mergeOuterClone(getInstModifications());
    510510
     511    /**
     512     *  Gives the Environment only including InstNodes
     513     */
    511514    syn Environment InstNode.filteredEnvironment() = nameScope() ? myEnvironment(name()) : myEnvironment();
    512515
     
    605608    }
    606609
    607     eq Program.getInstProgramRoot().myEnvironment() = new Environment();
    608     eq Program.getInstProgramRoot().myEnvironment(String name) = new Environment();
     610    eq Program.getInstProgramRoot().myEnvironment() = new Environment();
     611    eq Program.getInstProgramRoot().myEnvironment(String name) = new Environment();
    609612
    610613    syn lazy List<InstArrayModification> InstValueModification.getInstArrayModificationList() {
     
    664667   
    665668   
    666     /**
    667     * Find the InstModification containing this expression, if any.
    668     */
    669     inh InstModification FExp.surroundingInstModification();
     669    /**
     670    * Find the InstModification containing this expression, if any.
     671    */
     672    inh InstModification FExp.surroundingInstModification();
    670673    eq InstModification.getChild().surroundingInstModification() = this;
    671674    eq InstNode.getChild().surroundingInstModification()         = null;
    672675    eq Root.getChild().surroundingInstModification()             = null;
    673    
    674    
    675     syn InstComponentRedeclare InstModification.matchInstComponentRedeclare(String name) = null;
    676     eq InstComponentRedeclare.matchInstComponentRedeclare(String name) {
    677         if (getName().name().equals(name))
    678             return this;
    679         else
    680             return null;
    681     }
    682    
     676   
     677   
     678    syn InstComponentRedeclare InstModification.matchInstComponentRedeclare(String name) = null;
     679    eq InstComponentRedeclare.matchInstComponentRedeclare(String name) {
     680        if (getName().name().equals(name))
     681            return this;
     682        else
     683            return null;
     684    }
     685
    683686    syn InstClassRedeclare InstModification.matchInstClassRedeclare(String name) = null;
    684     eq InstClassRedeclare.matchInstClassRedeclare(String name) {
    685         if (getName().name().equals(name))
    686             return this;
    687         else
    688             return null;
    689     }
    690    
    691     syn InstComponentRedeclare InstNode.retrieveReplacingComponent(String name) {
    692         for (InstModification im : getMergedEnvironment()) {
    693             InstComponentRedeclare icr = im.matchInstComponentRedeclare(name);
    694             if (icr != null)
    695                 return icr;
    696         }
    697         return null;
    698     }
     687    eq InstClassRedeclare.matchInstClassRedeclare(String name) {
     688        if (getName().name().equals(name))
     689            return this;
     690        else
     691            return null;
     692    }
     693
     694    syn InstComponentRedeclare InstNode.retrieveReplacingComponent(String name) {
     695        for (InstModification im : getMergedEnvironment()) {
     696            InstComponentRedeclare icr = im.matchInstComponentRedeclare(name);
     697            if (icr != null)
     698                return icr;
     699        }
     700        return null;
     701    }
    699702
    700703    syn InstComponentRedeclare InstNode.retrieveConstrainingComponent(String name) {
     
    707710    }
    708711
    709     // TODO: make sure components are created using the right class now
    710     syn InstRedeclareClassNode InstNode.retrieveReplacingClass(String name) {
    711         for (InstModification im : getMergedEnvironment()) {
    712             InstClassRedeclare icr = im.matchInstClassRedeclare(name);
    713             if (icr != null)
    714                 return icr;
    715         }
    716         return null;
    717     }
     712    // TODO: make sure components are created using the right class now
     713    syn InstRedeclareClassNode InstNode.retrieveReplacingClass(String name) {
     714        for (InstModification im : getMergedEnvironment()) {
     715            InstClassRedeclare icr = im.matchInstClassRedeclare(name);
     716            if (icr != null)
     717                return icr;
     718        }
     719        return null;
     720    }
    718721
    719722    syn InstRedeclareClassNode InstNode.retrieveConstrainingClass(String name) {
     
    726729    }
    727730
    728     eq InstExtends.retrieveReplacingClass(String name) {
    729         InstRedeclareClassNode res = super.retrieveReplacingClass(name);
    730         return (res == null) ? lookupReplacingClass(name) : res;
    731     }
    732    
    733     inh InstRedeclareClassNode InstExtends.lookupReplacingClass(String name);
    734     eq InstNode.getInstExtends().lookupReplacingClass(String name) {
    735         for (InstClassDecl icd : getRedeclaredInstClassDecls())
    736             if (icd.name().equals(name))
    737                 return icd;
    738         return retrieveReplacingClass(name);
    739     }
    740     eq InstExtends.getChild().lookupReplacingClass(String name) {
    741         InstRedeclareClassNode res = lookupReplacingClass(name);
    742         if (res != null)
    743             return res;
    744         for (InstClassDecl icd : getRedeclaredInstClassDecls())
    745             if (icd.name().equals(name))
    746                 return icd;
    747         return super.retrieveReplacingClass(name);
    748     }
     731    eq InstExtends.retrieveReplacingClass(String name) {
     732        InstRedeclareClassNode res = super.retrieveReplacingClass(name);
     733        return (res == null) ? lookupReplacingClass(name) : res;
     734    }
     735   
     736    inh InstRedeclareClassNode InstExtends.lookupReplacingClass(String name);
     737    eq InstNode.getInstExtends().lookupReplacingClass(String name) {
     738        for (InstClassDecl icd : getRedeclaredInstClassDecls())
     739            if (icd.name().equals(name))
     740                return icd;
     741        return retrieveReplacingClass(name);
     742    }
     743    eq InstExtends.getChild().lookupReplacingClass(String name) {
     744        InstRedeclareClassNode res = lookupReplacingClass(name);
     745        if (res != null)
     746            return res;
     747        for (InstClassDecl icd : getRedeclaredInstClassDecls())
     748            if (icd.name().equals(name))
     749                return icd;
     750        return super.retrieveReplacingClass(name);
     751    }
    749752    eq InstRoot.getChild().lookupReplacingClass(String name) = null;
    750753    eq Root.getChild().lookupReplacingClass(String name)     = null;
     
    905908    }
    906909   
    907     /**
    908     * Dynamically places an FAbstractEquation in the tree under this FAbstractEquation.
    909     *
    910     * @return  the final version of the dynamically placed node.
    911     */
    912     public FAbstractEquation FAbstractEquation.dynamicFAbstractEquation(FAbstractEquation eqn) {
    913         if (eqn == this)
    914             return eqn;
    915         getDynamicFAbstractEquationOpt().setChild(eqn, 0);
    916         return (FAbstractEquation) getDynamicFAbstractEquationOpt().getChild(0);
    917     }
     910    /**
     911    * Dynamically places an FAbstractEquation in the tree under this FAbstractEquation.
     912    *
     913    * @return  the final version of the dynamically placed node.
     914    */
     915    public FAbstractEquation FAbstractEquation.dynamicFAbstractEquation(FAbstractEquation eqn) {
     916        if (eqn == this)
     917            return eqn;
     918        getDynamicFAbstractEquationOpt().setChild(eqn, 0);
     919        return (FAbstractEquation) getDynamicFAbstractEquationOpt().getChild(0);
     920    }
    918921
    919922
     
    10691072
    10701073
    1071     syn lazy List<InstModification> InstNode.getElementInstModificationList() {
     1074    syn lazy List<InstModification> InstNode.getElementInstModificationList() {
    10721075        List<InstModification> l = new List<InstModification>();
    10731076        for (SrcModificationOrRedeclareElement m : elementModifications())
    10741077            l.add(m.newInstModification());
    10751078        return l;
    1076     }
     1079    }
    10771080
    10781081
     
    10991102     
    11001103     rewrite InstCreateComponentDecl {
    1101         to InstComponentDecl getClassName().myInstClassDecl().newInstComponentDecl(getSrcComponentDecl());
     1104         to InstComponentDecl getClassName().myInstClassDecl().newInstComponentDecl(getSrcComponentDecl());
    11021105     }
    11031106     
    11041107     rewrite InstCreateForIndexPrimitive {
    1105         to InstPrimitive (InstPrimitive) getClassName().myInstClassDecl().newInstComponentDecl(getSrcComponentDecl());
     1108         to InstPrimitive (InstPrimitive) getClassName().myInstClassDecl().newInstComponentDecl(getSrcComponentDecl());
    11061109     }
    11071110
     
    12001203    }
    12011204
    1202     eq InstNamedModification.matches(String str) = name().equals(str);
    1203    
    1204     inh boolean InstNode.isInInstModification();
    1205     eq InstModification.getChild().isInInstModification() = true;
    1206     eq InstRoot.getChild().isInInstModification()         = false;
    1207     eq Root.getChild().isInInstModification()             = false;
    1208 
    1209     syn boolean SrcExtendsClause.needsReplacingExtends()  = false;
    1210     eq SrcExtendsClauseShortClass.needsReplacingExtends() = true;
    1211    
     1205    eq InstNamedModification.matches(String str) = name().equals(str);
     1206
     1207    inh boolean InstNode.isInInstModification();
     1208    eq InstModification.getChild().isInInstModification() = true;
     1209    eq InstRoot.getChild().isInInstModification()         = false;
     1210    eq Root.getChild().isInInstModification()             = false;
     1211
     1212    syn boolean SrcExtendsClause.needsReplacingExtends()  = false;
     1213    eq SrcExtendsClauseShortClass.needsReplacingExtends() = true;
     1214
    12121215
    12131216    public InstComponentDecl InstClassDecl.newInstComponentDecl(SrcComponentDecl cd) {
     
    14781481    // Create InstRestriction
    14791482    public InstRestriction SrcBaseClassDecl.newInstRestriction() {
    1480         return getSrcRestriction().newInstRestriction();
     1483        return getSrcRestriction().newInstRestriction();
    14811484    }
    14821485   
     
    15591562    }
    15601563
    1561     public InstAccess SrcComponentDecl.newInstClassAccess() {
    1562         return getClassName().newInstAccess();
    1563     }
     1564    public InstAccess SrcComponentDecl.newInstClassAccess() {
     1565        return getClassName().newInstAccess();
     1566    }
    15641567
    15651568    public abstract InstAccess SrcAccess.newInstAccess();
     
    15921595    }
    15931596
    1594     syn boolean InstExtends.hasInstClassModification()           = false;
    1595     eq InstReplacingExtendsShortClass.hasInstClassModification() = getInstExtendsShortClass().hasInstClassModification();
    1596    
    1597     syn InstClassModification InstExtends.getInstClassModification() = null;
    1598     eq InstReplacingExtendsShortClass.getInstClassModification()     = getInstExtendsShortClass().getInstClassModification();
     1597    syn boolean InstExtends.hasInstClassModification()           = false;
     1598    eq InstReplacingExtendsShortClass.hasInstClassModification() = getInstExtendsShortClass().hasInstClassModification();
     1599
     1600    syn InstClassModification InstExtends.getInstClassModification() = null;
     1601    eq InstReplacingExtendsShortClass.getInstClassModification()     = getInstExtendsShortClass().getInstClassModification();
    15991602
    16001603    syn lazy InstProgramRoot Program.getInstProgramRoot() {
     
    16021605    }
    16031606
    1604     syn lazy InstClassDecl InstClassRedeclare.getInstClassDecl() {
    1605         return getSrcClassRedeclare().getSrcBaseClassDecl().newInstClassDecl();
    1606     }
     1607    syn lazy InstClassDecl InstClassRedeclare.getInstClassDecl() {
     1608        return getSrcClassRedeclare().getSrcBaseClassDecl().newInstClassDecl();
     1609    }
    16071610
    16081611    syn lazy InstComponentDecl InstComponentRedeclare.getInstComponentDecl() =
    16091612        new InstCreateComponentDecl(getComponentRedeclareDecl(), null);
    16101613
    1611     syn lazy InstComponentDecl InstReplacingRecord.getOriginalInstComponent() =
    1612         new InstCreateComponentDecl(getOriginalDecl(), null);
     1614    syn lazy InstComponentDecl InstReplacingRecord.getOriginalInstComponent() =
     1615        new InstCreateComponentDecl(getOriginalDecl(), null);
    16131616
    16141617    syn lazy InstComponentDecl InstReplacingComposite.getOriginalInstComponent() =
     
    16191622
    16201623
    1621     syn lazy InstClassDecl InstReplacingShortClassDecl.getOriginalInstClass() =
    1622         getOriginalClassDecl().newInstClassDecl();
    1623 
    1624     syn lazy InstClassDecl InstReplacingSimpleShortClassDecl.getOriginalInstClass() =
    1625         getOriginalClassDecl().newInstClassDecl();
    1626 
    1627     syn lazy InstClassDecl InstReplacingFullClassDecl.getOriginalInstClass() =
    1628         getOriginalClassDecl().newInstClassDecl();
    1629 
    1630     /**
    1631     * Returns the FExp associated with this argument, if any.
    1632     */
    1633     public FExp InstFunctionArgument.getFExp() { return null; }
     1624    syn lazy InstClassDecl InstReplacingShortClassDecl.getOriginalInstClass() =
     1625        getOriginalClassDecl().newInstClassDecl();
     1626
     1627    syn lazy InstClassDecl InstReplacingSimpleShortClassDecl.getOriginalInstClass() =
     1628        getOriginalClassDecl().newInstClassDecl();
     1629
     1630    syn lazy InstClassDecl InstReplacingFullClassDecl.getOriginalInstClass() =
     1631        getOriginalClassDecl().newInstClassDecl();
     1632
     1633    /**
     1634    * Returns the FExp associated with this argument, if any.
     1635    */
     1636    public FExp InstFunctionArgument.getFExp() { return null; }
    16341637
    16351638    /**
     
    16411644    public FExp InstGivenArgument.getOriginalFExp()    { return getFExpNoTransform(); }
    16421645
    1643     syn lazy FFunctionCallStmt InstExternalObject.getDestructorCall() {
    1644         InstAccess name = getClassName().copyAndAppend("destructor");
    1645         List<InstFunctionArgument> args = new List<InstFunctionArgument>();
    1646         args.add(new InstPositionalArgument(createAccessExp(), 0));
    1647         InstFunctionCall ifc = new InstFunctionCall(name, args);
    1648         ifc.generated = true;
    1649         FFunctionCallStmt stmt = new FFunctionCallStmt(new List(), ifc);
    1650         return stmt;
    1651     }
    1652 
    1653    
    1654     private boolean InstShortClassDecl.simpleRewriteDone = false;
    1655    
    1656     rewrite InstShortClassDecl {
    1657         when (!simpleRewriteDone) to InstAbstractShortClassDecl {
    1658             simpleRewriteDone = true;
    1659             if (shouldBeExpanded())
    1660                 return this;
    1661             InstSimpleShortClassDecl res = createInstSimpleShortClassDecl();
    1662             res.setLocation(this);
    1663             return res;
    1664         }   
    1665     }
    1666    
    1667     public InstSimpleShortClassDecl InstShortClassDecl.createInstSimpleShortClassDecl() {
    1668         return new InstSimpleShortClassDecl(getSrcClassDecl(), getInstConstrainingClassOpt(), getInstRestriction());
    1669     }
    1670    
    1671     public InstReplacingSimpleShortClassDecl InstReplacingShortClassDecl.createInstSimpleShortClassDecl() {
    1672         return new InstReplacingSimpleShortClassDecl(getSrcClassDecl(), getInstConstrainingClassOpt(),
    1673                 getInstRestriction(), getOriginalClassDecl(), getInstClassRedeclare());
    1674     }
     1646    syn lazy FFunctionCallStmt InstExternalObject.getDestructorCall() {
     1647        InstAccess name = getClassName().copyAndAppend("destructor");
     1648        List<InstFunctionArgument> args = new List<InstFunctionArgument>();
     1649        args.add(new InstPositionalArgument(createAccessExp(), 0));
     1650        InstFunctionCall ifc = new InstFunctionCall(name, args);
     1651        ifc.generated = true;
     1652        FFunctionCallStmt stmt = new FFunctionCallStmt(new List(), ifc);
     1653        return stmt;
     1654    }
     1655
     1656
     1657    private boolean InstShortClassDecl.simpleRewriteDone = false;
     1658
     1659    rewrite InstShortClassDecl {
     1660        when (!simpleRewriteDone) to InstAbstractShortClassDecl {
     1661            simpleRewriteDone = true;
     1662            if (shouldBeExpanded())
     1663                return this;
     1664            InstSimpleShortClassDecl res = createInstSimpleShortClassDecl();
     1665            res.setLocation(this);
     1666            return res;
     1667        }
     1668    }
     1669
     1670    public InstSimpleShortClassDecl InstShortClassDecl.createInstSimpleShortClassDecl() {
     1671        return new InstSimpleShortClassDecl(getSrcClassDecl(), getInstConstrainingClassOpt(), getInstRestriction());
     1672    }
     1673
     1674    public InstReplacingSimpleShortClassDecl InstReplacingShortClassDecl.createInstSimpleShortClassDecl() {
     1675        return new InstReplacingSimpleShortClassDecl(getSrcClassDecl(), getInstConstrainingClassOpt(),
     1676               getInstRestriction(), getOriginalClassDecl(), getInstClassRedeclare());
     1677    }
    16751678
    16761679    syn boolean InstShortClassDecl.shouldBeExpanded() =
     
    16841687        (isFunction() && !instModificationsFromConstrainingType().isEmpty());
    16851688
    1686     syn boolean SrcClassDecl.hasSrcTypePrefix() = false;
    1687     eq SrcShortClassDecl.hasSrcTypePrefix()     = getSrcExtendsClauseShortClass().hasSrcTypePrefix();
    1688    
    1689     syn boolean SrcExtendsClauseShortClass.hasSrcTypePrefix() =
    1690         hasSrcTypePrefixFlow() || hasSrcTypePrefixVariability() || hasSrcTypePrefixInputOutput();
     1689    syn boolean SrcClassDecl.hasSrcTypePrefix() = false;
     1690    eq SrcShortClassDecl.hasSrcTypePrefix()     = getSrcExtendsClauseShortClass().hasSrcTypePrefix();
     1691
     1692    syn boolean SrcExtendsClauseShortClass.hasSrcTypePrefix() =
     1693        hasSrcTypePrefixFlow() || hasSrcTypePrefixVariability() || hasSrcTypePrefixInputOutput();
    16911694
    16921695    syn lazy InstAccess InstSimpleShortClassDecl.getTarget() =
     
    17181721        throw new UnsupportedOperationException();
    17191722    }
    1720    
     1723
    17211724    public List<InstClassDecl> InstSimpleShortClassDecl.getInstClassDeclList() {
    17221725        throw new UnsupportedOperationException();
     
    17251728        throw new UnsupportedOperationException();
    17261729    }
    1727    
     1730
    17281731    public List<InstExtends> InstSimpleShortClassDecl.getInstExtendsList() {
    17291732        throw new UnsupportedOperationException();
     
    17321735        throw new UnsupportedOperationException();
    17331736    }
    1734    
     1737
    17351738    public List<InstImport> InstSimpleShortClassDecl.getInstImportList() {
    17361739        throw new UnsupportedOperationException();
     
    17391742        throw new UnsupportedOperationException();
    17401743    }
    1741    
     1744
    17421745    public List<InstClassDecl> InstSimpleShortClassDecl.getRedeclaredInstClassDeclList() {
    17431746        throw new UnsupportedOperationException();
     
    18651868    eq SrcDummyModification.instantiateExp()       = myFExp().treeCopy();
    18661869
    1867     public List InstNode.buildFAbstractEquationList() {
    1868         List l = new List();
     1870    public List InstNode.buildFAbstractEquationList() {
     1871    List l = new List();
    18691872        for (SrcAbstractEquation e : equations()) {
    1870             l.add(e.instantiate());
     1873            l.add(e.instantiate());
    18711874        }
    18721875        for (SrcAlgorithm a : algorithms()) {
    1873             l.add(a.instantiate());
     1876            l.add(a.instantiate());
    18741877        }
    18751878        for (FAlgorithm a : fAlgorithms()) {
     
    18781881        return l;
    18791882    }
    1880    
    1881     public List InstArrayComponentDecl.buildFAbstractEquationList() {
    1882         return instComponentDecl().buildFAbstractEquationList();
    1883     }
    1884    
    1885     syn lazy List InstNode.getFAbstractEquationList() =
    1886         buildFAbstractEquationList();
    1887     eq InstComponentDecl.getFAbstractEquationList() =
    1888         isArrayParent() ? new List() : buildFAbstractEquationList();
    1889 
    1890     // TODO: Change behaviour of isArrayDecl to this instead?
    1891     syn boolean InstComponentDecl.isArrayParent() =
    1892         getNumInstComponentDecl() > 0 && getInstComponentDecl(0).isArrayChild();
    1893 
    1894     syn boolean InstComponentDecl.isArrayChild() = false;
    1895     eq InstArrayComponentDecl.isArrayChild()     = true;
     1883
     1884    public List InstArrayComponentDecl.buildFAbstractEquationList() {
     1885        return instComponentDecl().buildFAbstractEquationList();
     1886    }
     1887
     1888    syn lazy List InstNode.getFAbstractEquationList() =
     1889        buildFAbstractEquationList();
     1890    eq InstComponentDecl.getFAbstractEquationList() =
     1891        isArrayParent() ? new List() : buildFAbstractEquationList();
     1892
     1893    // TODO: Change behaviour of isArrayDecl to this instead?
     1894    syn boolean InstComponentDecl.isArrayParent() =
     1895        getNumInstComponentDecl() > 0 && getInstComponentDecl(0).isArrayChild();
     1896
     1897    syn boolean InstComponentDecl.isArrayChild() = false;
     1898    eq InstArrayComponentDecl.isArrayChild()     = true;
    18961899}
    18971900
     
    21582161    }
    21592162
    2160     /**
    2161     * Check if this node is a class declaration or an extends in one.
    2162     */
    2163     syn boolean InstNode.isClassDecl() = false;
    2164     eq InstClassDecl.isClassDecl()     = true;
    2165     eq InstExtends.isClassDecl()       = isInClassDecl();
     2163    /**
     2164    * Check if this node is a class declaration or an extends in one.
     2165    */
     2166    syn boolean InstNode.isClassDecl() = false;
     2167    eq InstClassDecl.isClassDecl()     = true;
     2168    eq InstExtends.isClassDecl()       = isInClassDecl();
    21662169   
    21672170    /**
Note: See TracChangeset for help on using the changeset viewer.