public AssociationClassCallExp createAssociationClassCallExp( OclExpression source, CoreAssociationClass referredAssociationClass, CoreAssociationEnd navigationSource, List <object> qualifiers, bool isMarkedPre) { AssociationClassCallExpImpl exp = new AssociationClassCallExpImpl(); exp.setFactory(this); exp.setReferredAssociationClass(referredAssociationClass); exp.setNavigationSource(navigationSource); exp.setSource(isMarkedPre ? createAtPreOperation(source) : source); if (qualifiers != null) { foreach (OclExpression qualifier in qualifiers) { ((OclExpressionImpl)qualifier).setNavigationCallExp(exp); ((AssociationClassCallExpImpl)exp).addQualifier(qualifier); } } CoreAssociationEnd assocEnd = navigationSource != null ? navigationSource : referredAssociationClass.lookupAssociationEnd(source.getType()); exp.setType(((AssociationClassCallExpImpl)exp).getExpressionType(source, assocEnd, referredAssociationClass)); ((OclExpressionImpl)source).setAppliedProperty(exp); return(exp); }
public override Object Clone() { AssociationClassCallExpImpl theClone = (AssociationClassCallExpImpl)base.Clone(); theClone.referredAssociationClass = referredAssociationClass; return(theClone); }