|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.eclipse.ocl.examples.pivot.utilities.AbstractConversion
org.eclipse.ocl.examples.pivot.context.AbstractBase2PivotConversion
org.eclipse.ocl.examples.xtext.base.cs2as.CS2PivotConversion
public class CS2PivotConversion
| Nested Class Summary | |
|---|---|
static class |
CS2PivotConversion.CacheKey<T>
|
| Nested classes/interfaces inherited from class org.eclipse.ocl.examples.pivot.utilities.AbstractConversion |
|---|
AbstractConversion.Predicate<T extends org.eclipse.emf.ecore.EObject> |
| Field Summary | |
|---|---|
static TracingOption |
CONTINUATION
|
protected CS2Pivot |
converter
|
protected java.util.Collection<? extends BaseCSResource> |
csResources
|
| Fields inherited from class org.eclipse.ocl.examples.pivot.utilities.AbstractConversion |
|---|
metaModelManager |
| Constructor Summary | |
|---|---|
CS2PivotConversion(CS2Pivot converter,
org.eclipse.xtext.diagnostics.IDiagnosticConsumer diagnosticsConsumer,
java.util.Collection<? extends BaseCSResource> csResources)
|
|
| Method Summary | ||
|---|---|---|
OCLExpression |
addBadExpressionError(ModelElementCS csElement,
java.lang.String boundMessage)
|
|
void |
addDiagnostic(ElementCS csElement,
java.lang.String boundMessage)
|
|
void |
addDiagnostic(ModelElementCS csElement,
org.eclipse.emf.common.util.Diagnostic diagnostic)
|
|
void |
addWarning(ModelElementCS csElement,
java.lang.String message,
java.lang.Object... bindings)
|
|
java.lang.String |
bind(org.eclipse.emf.ecore.EObject csContext,
java.lang.String messageTemplate,
java.lang.Object... bindings)
|
|
boolean |
checkForNoErrors(java.util.Collection<? extends BaseCSResource> csResources)
|
|
Dependency |
createTypeIsReferenceableDependency(TypeRefCS csTemplateParameter)
|
|
protected void |
diagnoseContinuationFailure(java.util.List<BasicContinuation<?>> continuations)
|
|
void |
garbageCollect(java.util.Map<? extends org.eclipse.emf.ecore.resource.Resource,? extends ASResource> cs2asResourceMap)
Prune the pivots to eliminate: - redundant orphans - e.g. |
|
protected void |
gatherNewPackage(java.util.Set<Package> newPackages,
org.eclipse.emf.ecore.EObject pivot)
|
|
protected void |
gatherNewPackages(java.util.Set<Package> newPackages,
org.eclipse.emf.ecore.resource.Resource csResource)
Add any packages and nested packages pivoted by csResource to newPackages. |
|
protected void |
gatherOldPackages(java.util.List<? extends Package> pkgs)
Add any packages and nested packages in eObjects to oldPackages. |
|
CS2Pivot |
getConverter()
|
|
|
getIntermediate(CS2PivotConversion.CacheKey<T> key)
|
|
Package |
getOldPackageByQualifiedName(PackageCS csElement)
|
|
Package |
getOldPackageBySimpleName(java.lang.String name)
|
|
protected java.lang.String |
getQualifiedName(java.lang.StringBuilder s,
Package pkg)
|
|
protected java.lang.String |
getQualifiedName(java.lang.StringBuilder s,
PackageCS csPackage)
|
|
protected java.util.List<TemplateBindingCS> |
getTemplateBindings(ElementCS csElement)
|
|
protected java.util.List<TemplateSignature> |
getTemplateSignatures(Element pivotElement)
|
|
InterDependency<BaseCSPreOrderVisitor.TemplateSignatureContinuation> |
getTypesHaveSignaturesInterDependency()
|
|
void |
handleVisitNamedElement(NamedElementCS csNamedElement,
NamedElement pivotElement)
|
|
void |
installPivotReference(ElementRefCS csElement,
Element newPivotElement,
org.eclipse.emf.ecore.EReference eReference)
|
|
void |
installPivotTypeWithMultiplicity(Type pivotType,
TypedRefCS csElement)
|
|
void |
installPivotUsage(ModelElementCS csElement,
Element newPivotElement)
|
|
protected void |
installRootContents(BaseCSResource csResource)
|
|
void |
installRootElement(BaseCSResource csResource,
Element pivotElement)
|
|
void |
installRootElement(org.eclipse.emf.ecore.resource.Resource csResource,
Element pivotElement)
Deprecated. |
|
boolean |
isInReturnTypeWithUnresolvedParameters(ElementCS csElement)
|
|
protected java.util.List<BasicContinuation<?>> |
progressContinuations(java.util.List<BasicContinuation<?>> continuations)
Invoke all of the continuations that can execute, returning the list of continuations till to perform, some of which may be ones that were blocked by unsatisfied dependencies, others of which may be further continuations resulting from only partial progress. |
|
|
putIntermediate(CS2PivotConversion.CacheKey<T> key,
T object)
|
|
void |
refreshComments(Element pivotElement,
ElementCS csElement)
|
|
void |
refreshContextVariable(ExpressionInOCL pivotSpecification)
|
|
|
refreshList(java.lang.Class<T> pivotClass,
java.util.List<T> pivotElements,
java.util.List<? extends PivotableElementCS> csElements)
|
|
|
refreshModelElement(java.lang.Class<T> pivotClass,
org.eclipse.emf.ecore.EClass pivotEClass,
ModelElementCS csElement)
Return a pivotEClass instance cast to pivotClass registered for csElement.getCSI(). |
|
|
refreshPivotList(java.lang.Class<T> pivotClass,
java.util.List<? super T> pivotElements,
java.util.List<? extends ModelElementCS> csElements)
|
|
Type |
refreshRequiredType(TypedMultiplicityElement pivotElement,
TypedElementCS csTypedElement)
|
|
void |
refreshTemplateSignature(TemplateableElementCS csTemplateableElement,
TemplateableElement pivotTemplateableElement)
|
|
protected void |
resetPivotMappings(java.util.Collection<? extends BaseCSResource> csResources)
|
|
void |
setReferredIteration(LoopExp expression,
Iteration iteration)
|
|
void |
setReferredOperation(OperationCallExp expression,
Operation operation)
|
|
protected void |
specializeTemplateBindings(java.util.List<TemplateBinding> templateBindings,
java.util.List<TemplateSignature> templateSignatures,
java.util.List<TemplateBindingCS> csTemplateBindings)
Update a list of TemplateBinding to match a list of TemplateSignature by moving/adding/removing existing entries. |
|
protected void |
specializeTemplateParameterSubstitutions(java.util.List<TemplateParameterSubstitution> templateParameterSubstitutions,
java.util.List<TemplateParameter> templateParameters,
java.util.List<TemplateParameterSubstitutionCS> csTemplateParameterSubstitutions)
Update a list of TemplateParameterSubstitution to match a list of TemplateParameter by moving/adding/removing existing entries. |
|
protected TemplateableElement |
specializeTemplates(TypedTypeRefCS csElement)
|
|
boolean |
update()
Sequence the update passes to make the pivot match the CS. |
|
protected void |
visitContainment(ElementCS csElement,
java.util.List<BasicContinuation<?>> continuations)
|
|
protected void |
visitInPostOrder(ElementCS csElement,
java.util.List<BasicContinuation<?>> continuations)
|
|
protected void |
visitInPreOrder(ElementCS csElement,
java.util.List<BasicContinuation<?>> continuations)
|
|
|
visitLeft2Right(java.lang.Class<T> pivotClass,
ElementCS csElement)
|
|
| Methods inherited from class org.eclipse.ocl.examples.pivot.context.AbstractBase2PivotConversion |
|---|
addUnderspecifiedTypedElement, refreshName, refreshNsURI, resolveUnderspecifiedType, resolveUnderspecifiedTypes, setBehavioralType, setClassifierContext, setContextVariable, setOperationContext, setParameterVariables, setParameterVariables, setPropertyContext, setResultVariable, setType, setType |
| Methods inherited from class org.eclipse.ocl.examples.pivot.utilities.AbstractConversion |
|---|
basicGet, getEPackage, getMetaModelManager, isId, refreshList, refreshSet |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
@NonNull public static final TracingOption CONTINUATION
@NonNull protected final CS2Pivot converter
@NonNull protected final java.util.Collection<? extends BaseCSResource> csResources
| Constructor Detail |
|---|
public CS2PivotConversion(@NonNull
CS2Pivot converter,
@NonNull
org.eclipse.xtext.diagnostics.IDiagnosticConsumer diagnosticsConsumer,
@NonNull
java.util.Collection<? extends BaseCSResource> csResources)
| Method Detail |
|---|
@NonNull
public OCLExpression addBadExpressionError(@NonNull
ModelElementCS csElement,
@NonNull
java.lang.String boundMessage)
public void addDiagnostic(@NonNull
ModelElementCS csElement,
@NonNull
org.eclipse.emf.common.util.Diagnostic diagnostic)
public void addDiagnostic(@NonNull
ElementCS csElement,
@NonNull
java.lang.String boundMessage)
public void addWarning(@NonNull
ModelElementCS csElement,
java.lang.String message,
java.lang.Object... bindings)
@NonNull
public java.lang.String bind(@NonNull
org.eclipse.emf.ecore.EObject csContext,
java.lang.String messageTemplate,
java.lang.Object... bindings)
public boolean checkForNoErrors(@NonNull
java.util.Collection<? extends BaseCSResource> csResources)
public Dependency createTypeIsReferenceableDependency(@NonNull
TypeRefCS csTemplateParameter)
protected void diagnoseContinuationFailure(@NonNull
java.util.List<BasicContinuation<?>> continuations)
public void garbageCollect(@NonNull
java.util.Map<? extends org.eclipse.emf.ecore.resource.Resource,? extends ASResource> cs2asResourceMap)
protected void gatherNewPackage(@NonNull
java.util.Set<Package> newPackages,
@NonNull
org.eclipse.emf.ecore.EObject pivot)
protected void gatherNewPackages(@NonNull
java.util.Set<Package> newPackages,
@NonNull
org.eclipse.emf.ecore.resource.Resource csResource)
protected void gatherOldPackages(@NonNull
java.util.List<? extends Package> pkgs)
@NonNull public final CS2Pivot getConverter()
public <T> T getIntermediate(@NonNull
CS2PivotConversion.CacheKey<T> key)
@Nullable
public Package getOldPackageByQualifiedName(@NonNull
PackageCS csElement)
@Nullable
public Package getOldPackageBySimpleName(@NonNull
java.lang.String name)
@NonNull
protected java.lang.String getQualifiedName(@NonNull
java.lang.StringBuilder s,
@NonNull
Package pkg)
@NonNull
protected java.lang.String getQualifiedName(@NonNull
java.lang.StringBuilder s,
@NonNull
PackageCS csPackage)
@NonNull
protected java.util.List<TemplateBindingCS> getTemplateBindings(@NonNull
ElementCS csElement)
@NonNull
protected java.util.List<TemplateSignature> getTemplateSignatures(@NonNull
Element pivotElement)
@NonNull public InterDependency<BaseCSPreOrderVisitor.TemplateSignatureContinuation> getTypesHaveSignaturesInterDependency()
public void handleVisitNamedElement(@NonNull
NamedElementCS csNamedElement,
@NonNull
NamedElement pivotElement)
public void installPivotReference(@NonNull
ElementRefCS csElement,
@NonNull
Element newPivotElement,
org.eclipse.emf.ecore.EReference eReference)
public void installPivotUsage(@NonNull
ModelElementCS csElement,
@NonNull
Element newPivotElement)
protected void installRootContents(@NonNull
BaseCSResource csResource)
public void installPivotTypeWithMultiplicity(@NonNull
Type pivotType,
@NonNull
TypedRefCS csElement)
@Deprecated
public void installRootElement(@NonNull
org.eclipse.emf.ecore.resource.Resource csResource,
@NonNull
Element pivotElement)
public void installRootElement(@NonNull
BaseCSResource csResource,
@NonNull
Element pivotElement)
public boolean isInReturnTypeWithUnresolvedParameters(@NonNull
ElementCS csElement)
@Nullable
protected java.util.List<BasicContinuation<?>> progressContinuations(@NonNull
java.util.List<BasicContinuation<?>> continuations)
continuations -
public <T> T putIntermediate(CS2PivotConversion.CacheKey<T> key,
T object)
public void refreshComments(Element pivotElement,
ElementCS csElement)
public void refreshContextVariable(@NonNull
ExpressionInOCL pivotSpecification)
public <T extends Element> void refreshList(@NonNull
java.lang.Class<T> pivotClass,
java.util.List<T> pivotElements,
java.util.List<? extends PivotableElementCS> csElements)
@NonNull
public <T extends Element> T refreshModelElement(@NonNull
java.lang.Class<T> pivotClass,
org.eclipse.emf.ecore.EClass pivotEClass,
@Nullable
ModelElementCS csElement)
An existing element is re-used else an new instance is created.
The pivot element is installed as the original object of csElement.
T - pivotClass - pivotEClass - csElement -
public <T extends Element> void refreshPivotList(@NonNull
java.lang.Class<T> pivotClass,
java.util.List<? super T> pivotElements,
java.util.List<? extends ModelElementCS> csElements)
public Type refreshRequiredType(@NonNull
TypedMultiplicityElement pivotElement,
@NonNull
TypedElementCS csTypedElement)
public void refreshTemplateSignature(@NonNull
TemplateableElementCS csTemplateableElement,
@NonNull
TemplateableElement pivotTemplateableElement)
protected void resetPivotMappings(@NonNull
java.util.Collection<? extends BaseCSResource> csResources)
public void setReferredIteration(@NonNull
LoopExp expression,
@Nullable
Iteration iteration)
public void setReferredOperation(@NonNull
OperationCallExp expression,
@Nullable
Operation operation)
protected void specializeTemplateBindings(@NonNull
java.util.List<TemplateBinding> templateBindings,
@NonNull
java.util.List<TemplateSignature> templateSignatures,
@NonNull
java.util.List<TemplateBindingCS> csTemplateBindings)
templateBindings - templateSignatures -
protected void specializeTemplateParameterSubstitutions(@NonNull
java.util.List<TemplateParameterSubstitution> templateParameterSubstitutions,
@NonNull
java.util.List<TemplateParameter> templateParameters,
@NonNull
java.util.List<TemplateParameterSubstitutionCS> csTemplateParameterSubstitutions)
eList - templateSignature - templateBinding -
@Nullable
protected TemplateableElement specializeTemplates(@NonNull
TypedTypeRefCS csElement)
public boolean update()
csResources -
protected void visitContainment(@NonNull
ElementCS csElement,
@NonNull
java.util.List<BasicContinuation<?>> continuations)
protected void visitInPostOrder(@NonNull
ElementCS csElement,
@NonNull
java.util.List<BasicContinuation<?>> continuations)
protected void visitInPreOrder(@NonNull
ElementCS csElement,
@NonNull
java.util.List<BasicContinuation<?>> continuations)
public <T extends Element> T visitLeft2Right(@NonNull
java.lang.Class<T> pivotClass,
@NonNull
ElementCS csElement)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||