Interface ConstraintsAspectDescriptor

  • All Superinterfaces:
    ILanguageAspect
    All Known Implementing Classes:
    BaseConstraintsAspectDescriptor, ConstraintsAspectInterpreted

    public interface ConstraintsAspectDescriptor
    extends ILanguageAspect
    LanguageRuntime is allowed to return null descriptor in case there are no constraints for language's concept defined right in the language. Access to constraints from concept's hierarchy is done by ConceptRegistry at the moment. We might change the contract and generate descriptor class always, delegating to superclass as appropriate, however, need to address two issues first: (a) we don't want to go further than immediate superclasses (i.e. don't want to fix complete concept structure at generation time), and even for immediate superclasses we'd like to grab newly added constraints, if any, without re-generation. (b) if we could reference generated descriptors class directly (doesn't look feasible at the moment, due to (a), don't want to fix exact superclass to go to), we might simply use delegation. Alternative is to generate a class that does a callback, so RT could pick proper superclass to go to. We don't have such API yet, nor are ready to introduce it. Besides, it would be pretty much the same as present approach, with a burden of extra generated class.

    See Also:
    BehaviorAspectDescriptor