de.grogra.xl.impl.base
public abstract class CompiletimeModel extends java.lang.Object implements CompiletimeModel
| Constructor and Description |
|---|
CompiletimeModel(java.lang.String runtimeConstant) |
| Modifier and Type | Method and Description |
|---|---|
Type<?> |
getEdgeType()
Specifies the type of standard edges.
|
Type<?> |
getEdgeTypeFor(Type<?> type)
Specifies the compile-time type of edges for a given type.
|
Type<Graph.QState> |
getQueryStateType()
Returns the type of query states to be used for queries
for this model.
|
java.lang.String |
getRuntimeName()
Defines the name of the corresponding
RuntimeModel. |
java.io.Serializable |
getStandardEdgeFor(int edgeType)
Returns a constant value representing a standard edge.
|
CompiletimeModel.Property |
getWrapProperty(Type<?> wrapperType)
Returns the unwrapping property of a wrapper type.
|
boolean |
needsWrapperFor(Type<?> type)
Determines whether a value of the given type has to be wrapped before
it is added as a node to a
Graph. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetNodeType, getProducerType, getWrapperTypeForpublic Type<?> getEdgeType()
CompiletimeModelCompiletimeModel.getStandardEdgeFor(int).getEdgeType in interface CompiletimeModelpublic Type<?> getEdgeTypeFor(Type<?> type)
CompiletimeModeltype should be cast before it is interpreted as
an edge expression.getEdgeTypeFor in interface CompiletimeModeltype - the type of the expressionpublic Type<Graph.QState> getQueryStateType()
CompiletimeModelgetQueryStateType in interface CompiletimeModelpublic java.lang.String getRuntimeName()
CompiletimeModelRuntimeModel. This name
is used during run-time in invocations of
RuntimeModelFactory.modelForName(java.lang.String, java.lang.ClassLoader)
in order to obtain the RuntimeModel
suitable for the code that is compiled within this compile-time model.getRuntimeName in interface CompiletimeModelpublic java.io.Serializable getStandardEdgeFor(int edgeType)
CompiletimeModeledge
(EdgePattern.ANY_EDGE,
EdgePattern.BRANCH_EDGE,
EdgePattern.SUCCESSOR_EDGE or
EdgePattern.REFINEMENT_EDGE) for this
model. It is used as argument to constructor invocations of
EdgePattern. Primitive values have to
be wrapped as usual.getStandardEdgeFor in interface CompiletimeModeledgeType - int-value encoding a standard edgepublic CompiletimeModel.Property getWrapProperty(Type<?> wrapperType)
CompiletimeModelwrapperType is the type of a wrapper. If there
is a property declared in this type which can be used to obtain
the wrapped argument, this property is returned, otherwise
null.getWrapProperty in interface CompiletimeModelwrapperType - the type of a wrapperpublic boolean needsWrapperFor(Type<?> type)
CompiletimeModelGraph.needsWrapperFor in interface CompiletimeModeltype - a value typetrue iff a wrapper is needed for type