Class AbstractInternedStatementSupport<A,D extends DeclaredStatement<A>,E extends EffectiveStatement<A,D>>
java.lang.Object
org.opendaylight.yangtools.yang.parser.spi.meta.StatementSupport<A,D,E>
org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport<A,D,E>
org.opendaylight.yangtools.yang.parser.spi.meta.AbstractInternedStatementSupport<A,D,E>
- All Implemented Interfaces:
StatementFactory<A,D, E>
- Direct Known Subclasses:
AbstractInternedStringStatementSupport
@Beta
public abstract class AbstractInternedStatementSupport<A,D extends DeclaredStatement<A>,E extends EffectiveStatement<A,D>>
extends AbstractStatementSupport<A,D,E>
A
AbstractStatementSupport specialized for global interning. This base class is useful when the argument can
be reasonably interned and it dominates the EffectiveStatement implementation. Typical examples include
position and value statements, which typically do not have substatements and are based on simple
types.
Note: use of this base class implies context-independence.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.opendaylight.yangtools.yang.parser.spi.meta.StatementSupport
StatementSupport.CopyPolicy, StatementSupport.StatementEquality<A,D extends DeclaredStatement<A>>, StatementSupport.StatementPolicy<A, D extends DeclaredStatement<A>> -
Field Summary
Fields inherited from class org.opendaylight.yangtools.yang.parser.spi.meta.StatementSupport
NAMESPACE -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractInternedStatementSupport(StatementDefinition publicDefinition, StatementSupport.StatementPolicy<A, D> policy, org.opendaylight.yangtools.yang.parser.api.YangParserConfiguration config, @Nullable SubstatementValidator validator) -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract @NonNull DcreateDeclared(@NonNull A argument, @NonNull com.google.common.collect.ImmutableList<DeclaredStatement<?>> substatements) protected final DcreateDeclared(BoundStmtCtx<A> ctx, com.google.common.collect.ImmutableList<DeclaredStatement<?>> substatements) protected abstract @NonNull EcreateEffective(@NonNull D declared, @NonNull com.google.common.collect.ImmutableList<? extends EffectiveStatement<?, ?>> substatements) protected final EcreateEffective(EffectiveStmtCtx.Current<A, D> stmt, com.google.common.collect.ImmutableList<? extends EffectiveStatement<?, ?>> substatements) protected abstract @NonNull DcreateEmptyDeclared(@NonNull A argument) protected abstract @NonNull EcreateEmptyEffective(@NonNull D declared) Methods inherited from class org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport
attachDeclarationReference, buildEffectiveSubstatements, copyEffective, createDeclared, createEffective, findFirstArgument, findFirstStatement, statementsToBuild, substatementValidatorMethods inherited from class org.opendaylight.yangtools.yang.parser.spi.meta.StatementSupport
adaptArgumentValue, argumentName, canReuseCurrent, copyPolicy, definition, extractEffectiveState, getArgumentDefinition, getPublicView, getSupportSpecificForArgument, hasArgumentSpecificSupports, internArgument, isIgnoringConfig, isIgnoringIfFeatures, onFullDefinitionDeclared, onLinkageDeclared, onPreLinkageDeclared, onStatementAdded, onStatementDefinitionDeclared, parseArgumentValue, statementName
-
Constructor Details
-
AbstractInternedStatementSupport
protected AbstractInternedStatementSupport(StatementDefinition publicDefinition, StatementSupport.StatementPolicy<A, D> policy, org.opendaylight.yangtools.yang.parser.api.YangParserConfiguration config, @Nullable SubstatementValidator validator)
-
-
Method Details
-
createDeclared
protected final D createDeclared(BoundStmtCtx<A> ctx, com.google.common.collect.ImmutableList<DeclaredStatement<?>> substatements) - Specified by:
createDeclaredin classAbstractStatementSupport<A,D extends DeclaredStatement<A>, E extends EffectiveStatement<A, D>>
-
createDeclared
protected abstract @NonNull D createDeclared(@NonNull A argument, @NonNull com.google.common.collect.ImmutableList<DeclaredStatement<?>> substatements) -
createEmptyDeclared
-
createEffective
protected final E createEffective(EffectiveStmtCtx.Current<A, D> stmt, com.google.common.collect.ImmutableList<? extends EffectiveStatement<?, ?>> substatements) - Specified by:
createEffectivein classAbstractStatementSupport<A,D extends DeclaredStatement<A>, E extends EffectiveStatement<A, D>>
-
createEffective
protected abstract @NonNull E createEffective(@NonNull D declared, @NonNull com.google.common.collect.ImmutableList<? extends EffectiveStatement<?, ?>> substatements) -
createEmptyEffective
-