static ILFile() { ILBlankElement.initialize(); ILCommentElement.initialize(); ILAssemblyElement.initialize(); ILCustomElement.initialize(); ILModuleElement.initialize(); ILPublickeytokenElement.initialize(); ILPublickeyElement.initialize(); ILNamespaceElement.initialize(); ILClassElement.initialize(); ILFieldElement.initialize(); ILPropertyElement.initialize(); ILGetElement.initialize(); ILSetElement.initialize(); ILMethodElement.initialize(); ILTryElement.initialize(); ILCatchElement.initialize(); ILStatementElement.initialize(); ILLineElement.initialize(); ILLocalsElement.initialize(); ILMaxstackElement.initialize(); ILUnknownElement.initialize(); }
getAttributeInfo(ILElementIterator allIter) { ILCustomElement cusElem = allIter.getNext() as ILCustomElement; if (null == cusElem) { return(null); } //TODO: Eigentlich müsste der Fall berücksichtigt werden, // wenn ein Feld mehrere Attribute hat. return(cusElem.getAttributeInfo()); }
isPersistent(Type attrType) { ILCustomElement.Iterator cstmIter = getCustomIterator(); // Durchlaufe alle Custom Elements der Klasse for (ILCustomElement cstmElem = cstmIter.getNext(); null != cstmElem; cstmElem = cstmIter.getNext()) { if (cstmElem.isAttribute(attrType)) { return(true); } } return(false); }
isPersistent(Type transientAttribute) { resolve(); // Hole das nächste Element im IL-Quelltext ILCustomElement cusElem = this.getSuccessor() as ILCustomElement; while (null != cusElem) { if (cusElem.isAttribute(transientAttribute)) { return(false); } cusElem = cusElem.getSuccessor() as ILCustomElement; } return(true); }
getCustomIterator() { return(ILCustomElement.getIterator(this)); }