Package jetbrains.mps.smodel.runtime
Interface ConceptDescriptor
- 
- All Superinterfaces:
 NamedElementDescriptor
- All Known Implementing Classes:
 BaseConceptDescriptor,CompiledConceptDescriptor,IllegalConceptDescriptor
public interface ConceptDescriptor extends NamedElementDescriptor
IMPLEMENTATION NOTE: this is our internal interface and it's not part of generated language/structure aspect code. There's ConceptDescriptorBuilder which creates appropriate instance, thus giving us freedom to modify this interface as we see fit. 
- 
- 
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Set<SConceptId>getAncestorsIds()StringgetConceptAlias()StringgetConceptFqName()ConceptKindgetConceptKind()SConceptIdgetId()LinkDescriptorgetLinkDescriptor(SContainmentLinkId id)Collection<LinkDescriptor>getLinkDescriptors()List<SConceptId>getParentsIds()Includes immediate extended/implemented interfaces and superconcept, for non-interface ConceptDescriptor.PropertyDescriptorgetPropertyDescriptor(SPropertyId id)Collection<PropertyDescriptor>getPropertyDescriptors()ReferenceDescriptorgetRefDescriptor(SReferenceLinkId id)Collection<ReferenceDescriptor>getReferenceDescriptors()StaticScopegetStaticScope()SConceptIdgetStubConceptId()SConceptIdgetSuperConceptId()intgetVersion()This method is for internal use only.booleanisAbstract()booleanisAssignableTo(SConceptId conceptId)booleanisFinal()booleanisInterfaceConcept()booleanisRootable()- 
Methods inherited from interface jetbrains.mps.smodel.runtime.NamedElementDescriptor
getName, getSourceNode 
 - 
 
 - 
 
- 
- 
Method Detail
- 
getId
@NotNull SConceptId getId()
 
- 
getConceptFqName
String getConceptFqName()
 
- 
isAbstract
boolean isAbstract()
 
- 
isFinal
boolean isFinal()
 
- 
isRootable
boolean isRootable()
 
- 
getConceptKind
ConceptKind getConceptKind()
 
- 
isInterfaceConcept
boolean isInterfaceConcept()
 
- 
getSuperConceptId
@Nullable SConceptId getSuperConceptId()
 
- 
isAssignableTo
boolean isAssignableTo(SConceptId conceptId)
 
- 
getParentsIds
List<SConceptId> getParentsIds()
Includes immediate extended/implemented interfaces and superconcept, for non-interface ConceptDescriptor. For BaseConcept, doesn't list itself as parent 
- 
getAncestorsIds
Set<SConceptId> getAncestorsIds()
 
- 
getPropertyDescriptors
Collection<PropertyDescriptor> getPropertyDescriptors()
- Returns:
 - all properties (including those of parent concepts) in unspecified order, never 
null 
 
- 
getPropertyDescriptor
PropertyDescriptor getPropertyDescriptor(SPropertyId id)
 
- 
getReferenceDescriptors
Collection<ReferenceDescriptor> getReferenceDescriptors()
- Returns:
 - all references aka association links (including those of parent concepts) in unspecified order, never 
null 
 
- 
getRefDescriptor
ReferenceDescriptor getRefDescriptor(SReferenceLinkId id)
 
- 
getLinkDescriptors
Collection<LinkDescriptor> getLinkDescriptors()
- Returns:
 - all containment aka aggregation links (including those of parent concepts) in unspecified order, never 
null 
 
- 
getLinkDescriptor
LinkDescriptor getLinkDescriptor(SContainmentLinkId id)
 
- 
getStaticScope
StaticScope getStaticScope()
 
- 
getStubConceptId
SConceptId getStubConceptId()
 
- 
getVersion
int getVersion()
This method is for internal use only. It allows to identify whether some properties, which were added in later versions of MPS, were specified on construction (by generated code) or they have default values. This is needed not to make wasSet/wasNotSet field for each method. version == 2 denotes addition of #getStubConceptId() 
 - 
 
 -