Interface ModelStatement<A>
- Type Parameters:
A
- Argument type (Empty
if statement does not have argument.)
- All Known Subinterfaces:
ActionEffectiveStatement
,ActionNodeContainerCompat<A,
,D, E> ActionStatement
,ActionStatementAwareDeclaredStatement<A>
,AliasEffectiveStatement
,AliasStatement
,AnnotationEffectiveStatement
,AnnotationStatement
,AnydataEffectiveStatement
,AnydataStatement
,AnyxmlEffectiveStatement
,AnyxmlStatement
,ArgumentEffectiveStatement
,ArgumentStatement
,AugmentEffectiveStatement
,AugmentIdentifierEffectiveStatement
,AugmentIdentifierStatement
,AugmentStatement
,BaseEffectiveStatement
,BaseStatement
,BelongsToEffectiveStatement
,BelongsToStatement
,BitEffectiveStatement
,BitStatement
,CaseEffectiveStatement
,CaseStatement
,ChoiceEffectiveStatement
,ChoiceStatement
,ConfigEffectiveStatement
,ConfigStatement
,ConfigStatementAwareDeclaredStatement<A>
,ConstrainedDocumentedDeclaredStatement<T>
,ConstrainedDocumentedDeclaredStatement.WithStatus<T>
,ContactEffectiveStatement
,ContactStatement
,ContainerEffectiveStatement
,ContainerStatement
,ContextInstanceEffectiveStatement
,ContextInstanceStatement
,ContextReferenceEffectiveStatement
,ContextReferenceStatement
,DataDefinitionAwareDeclaredStatement<A>
,DataDefinitionAwareDeclaredStatement.WithReusableDefinitions<A>
,DataDefinitionStatement
,DataTreeAwareEffectiveStatement<A,
,D> DataTreeEffectiveStatement<D>
,DeclaredStatement<A>
,DefaultDenyAllEffectiveStatement
,DefaultDenyAllStatement
,DefaultDenyWriteEffectiveStatement
,DefaultDenyWriteStatement
,DefaultEffectiveStatement
,DefaultStatement
,DefaultStatementAwareDeclaredStatement
,DefValEffectiveStatement
,DefValStatement
,DescriptionEffectiveStatement
,DescriptionStatement
,DeviateEffectiveStatement
,DeviateStatement
,DeviationEffectiveStatement
,DeviationStatement
,DisplayHintEffectiveStatement
,DisplayHintStatement
,DocumentedDeclaredStatement<T>
,DocumentedDeclaredStatement.WithStatus<T>
,EffectiveStatement<A,
,D> EffectiveStatementMixins.ActionNodeContainerMixin<A,
,D> EffectiveStatementMixins.AddedByUsesMixin<A,
,D> EffectiveStatementMixins.AugmentationTargetMixin<A,
,D> EffectiveStatementMixins.ConstraintMetaDefinitionMixin<A,
,D> EffectiveStatementMixins.CopyableMixin<A,
,D> EffectiveStatementMixins.DataNodeContainerMixin<A,
,D> EffectiveStatementMixins.DataSchemaNodeMixin<D>
,EffectiveStatementMixins.DocumentedNodeMixin<A,
,D> EffectiveStatementMixins.DocumentedNodeMixin.WithStatus<A,
,D> EffectiveStatementMixins.EffectiveStatementWithFlags<A,
,D> EffectiveStatementMixins.MandatoryMixin<A,
,D> org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.Mixin<A,
,D> EffectiveStatementMixins.MustConstraintMixin<A,
,D> EffectiveStatementMixins.NotificationNodeContainerMixin<A,
,D> EffectiveStatementMixins.OpaqueDataSchemaNodeMixin<D>
,EffectiveStatementMixins.OperationContainerMixin<D>
,EffectiveStatementMixins.OperationDefinitionMixin<D>
,EffectiveStatementMixins.PresenceMixin<A,
,D> EffectiveStatementMixins.SchemaNodeMixin<D>
,EffectiveStatementMixins.UnknownSchemaNodeMixin<A,
,D> EffectiveStatementMixins.UserOrderedAwareMixin<A,
,D, E> EffectiveStatementMixins.WhenConditionMixin<A,
,D> EnumEffectiveStatement
,EnumStatement
,ErrorAppTagEffectiveStatement
,ErrorAppTagStatement
,ErrorMessageEffectiveStatement
,ErrorMessageStatement
,ExtensionEffectiveStatement
,ExtensionStatement
,FeatureEffectiveStatement
,FeatureStatement
,FractionDigitsEffectiveStatement
,FractionDigitsStatement
,GetFilterElementAttributesEffectiveStatement
,GetFilterElementAttributesStatement
,GroupingEffectiveStatement
,GroupingStatement
,IdentityEffectiveStatement
,IdentityStatement
,IfFeatureAwareDeclaredStatement<A>
,IfFeatureEffectiveStatement
,IfFeatureStatement
,ImpliedEffectiveStatement
,ImpliedStatement
,ImportEffectiveStatement
,ImportStatement
,IncludeEffectiveStatement
,IncludeStatement
,InputEffectiveStatement
,InputStatement
,InstanceTargetEffectiveStatement
,InstanceTargetStatement
,KeyEffectiveStatement
,KeyStatement
,LeafEffectiveStatement
,LeafListEffectiveStatement
,LeafListStatement
,LeafStatement
,LengthEffectiveStatement
,LengthStatement
,ListEffectiveStatement
,ListStatement
,MandatoryEffectiveStatement
,MandatoryStatement
,MandatoryStatementAwareDeclaredStatement<T>
,MaxAccessEffectiveStatement
,MaxAccessStatement
,MaxElementsEffectiveStatement
,MaxElementsStatement
,MinElementsEffectiveStatement
,MinElementsStatement
,ModifierEffectiveStatement
,ModifierStatement
,ModuleEffectiveStatement
,ModuleStatement
,ModuleTagEffectiveStatement
,ModuleTagStatement
,MountEffectiveStatement
,MountPointEffectiveStatement
,MountPointStatement
,MountStatement
,MultipleElementsDeclaredStatement
,MustEffectiveStatement
,MustStatement
,MustStatementAwareDeclaredStatement<A>
,NamespaceEffectiveStatement
,NamespaceStatement
,NotificationEffectiveStatement
,NotificationNodeContainerCompat<A,
,D, E> NotificationStatement
,NotificationStatementAwareDeclaredStatement<A>
,OidEffectiveStatement
,OidStatement
,OpenConfigHashedValueEffectiveStatement
,OpenConfigHashedValueStatement
,OpenConfigPosixPatternEffectiveStatement
,OpenConfigPosixPatternStatement
,OpenConfigRegexpPosixEffectiveStatement
,OpenConfigRegexpPosixStatement
,OpenConfigVersionEffectiveStatement
,OpenConfigVersionStatement
,OperationDeclaredStatement
,OrderedByAwareEffectiveStatement<A,
,D> OrderedByEffectiveStatement
,OrderedByStatement
,OrganizationEffectiveStatement
,OrganizationStatement
,OutputEffectiveStatement
,OutputStatement
,PathEffectiveStatement
,PathStatement
,PatternEffectiveStatement
,PatternStatement
,PositionEffectiveStatement
,PositionStatement
,PrefixEffectiveStatement
,PrefixStatement
,PresenceEffectiveStatement
,PresenceStatement
,RangeEffectiveStatement
,RangeStatement
,ReferenceEffectiveStatement
,ReferenceStatement
,RefineEffectiveStatement
,RefineStatement
,RequireInstanceEffectiveStatement
,RequireInstanceStatement
,RevisionDateEffectiveStatement
,RevisionDateStatement
,RevisionEffectiveStatement
,RevisionStatement
,RootDeclaredStatement
,RootEffectiveStatement<D>
,RpcContextReferenceEffectiveStatement
,RpcContextReferenceStatement
,RpcEffectiveStatement
,RpcStatement
,SchemaTreeAwareEffectiveStatement<A,
,D> SchemaTreeEffectiveStatement<D>
,StatusEffectiveStatement
,StatusStatement
,SubIdEffectiveStatement
,SubIdStatement
,SubmoduleEffectiveStatement
,SubmoduleStatement
,SubscriptionStateNotificationEffectiveStatement
,SubscriptionStateNotificationStatement
,TypeAwareDeclaredStatement<A>
,TypedefAwareEffectiveStatement<A,
,D> TypedefEffectiveStatement
,TypedefStatement
,TypeEffectiveStatement<T>
,TypeStatement
,TypeStatement.BinarySpecification
,TypeStatement.BitsSpecification
,TypeStatement.Decimal64Specification
,TypeStatement.EnumSpecification
,TypeStatement.IdentityRefSpecification
,TypeStatement.InstanceIdentifierSpecification
,TypeStatement.LeafrefSpecification
,TypeStatement.NumericalRestrictions
,TypeStatement.StringRestrictions
,TypeStatement.UnionSpecification
,UniqueEffectiveStatement
,UniqueStatement
,UnitsEffectiveStatement
,UnitsStatement
,UnknownEffectiveStatement<A,
,D> UnknownStatement<A>
,UnrecognizedStatement
,UsesEffectiveStatement
,UsesStatement
,ValueEffectiveStatement
,ValueStatement
,WhenEffectiveStatement
,WhenStatement
,WhenStatementAwareDeclaredStatement<A>
,YangDataEffectiveStatement
,YangDataStatement
,YangVersionEffectiveStatement
,YangVersionStatement
,YinElementEffectiveStatement
,YinElementStatement
- All Known Implementing Classes:
AbstractChoiceEffectiveStatement
,AbstractContainerEffectiveStatement
,AbstractDeclaredEffectiveStatement
,AbstractDeclaredEffectiveStatement.Default
,AbstractDeclaredEffectiveStatement.DefaultArgument
,AbstractDeclaredEffectiveStatement.DefaultArgument.WithSubstatements
,AbstractDeclaredEffectiveStatement.DefaultWithArgument
,AbstractDeclaredEffectiveStatement.DefaultWithArgument.WithSubstatements
,AbstractDeclaredEffectiveStatement.DefaultWithDataTree
,AbstractDeclaredEffectiveStatement.DefaultWithDataTree.WithTypedefNamespace
,AbstractDeclaredEffectiveStatement.DefaultWithSchemaTree
,AbstractDeclaredEffectiveStatement.WithDataTree
,AbstractDeclaredEffectiveStatement.WithSchemaTree
,AbstractDeclaredStatement
,AbstractDeclaredStatement
,AbstractDeclaredStatement.ArgumentToString
,AbstractDeclaredStatement.ArgumentToString.WithSubstatements
,AbstractDeclaredStatement.WithArgument
,AbstractDeclaredStatement.WithArgument.WithSubstatements
,AbstractDeclaredStatement.WithoutArgument
,AbstractDeclaredStatement.WithoutArgument.WithSubstatements
,AbstractDeclaredStatement.WithQNameArgument
,AbstractDeclaredStatement.WithQNameArgument.WithSubstatements
,AbstractDeclaredStatement.WithRawArgument
,AbstractDeclaredStatement.WithRawArgument.WithSubstatements
,AbstractDeclaredStatement.WithRawStringArgument
,AbstractDeclaredStatement.WithRawStringArgument.WithSubstatements
,AbstractEffectiveModule
,AbstractEffectiveStatement
,AbstractEffectiveUnknownSchmemaNode
,AbstractGroupingEffectiveStatement
,AbstractLeafEffectiveStatement
,AbstractRefStatement
,AbstractUndeclaredEffectiveStatement
,AbstractUndeclaredEffectiveStatement.DefaultWithDataTree
,AbstractUndeclaredEffectiveStatement.DefaultWithSchemaTree
,AbstractUndeclaredEffectiveStatement.WithDataTree
,AbstractUndeclaredEffectiveStatement.WithSchemaTree
,ActionEffectiveStatementImpl
,AugmentEffectiveStatementImpl
,DeclaredCaseEffectiveStatement
,DeclaredInputEffectiveStatement
,DeclaredOutputEffectiveStatement
,DeviateEffectiveStatementImpl
,DeviateStatementImpl
,DeviationEffectiveStatementImpl
,DeviationStatementImpl
,EmptyActionStatement
,EmptyAnydataEffectiveStatement
,EmptyAnydataStatement
,EmptyAnyxmlEffectiveStatement
,EmptyAnyxmlStatement
,EmptyArgumentEffectiveStatement
,EmptyArgumentStatement
,EmptyAugmentStatement
,EmptyBaseEffectiveStatement
,EmptyBaseStatement
,EmptyBelongsToEffectiveStatement
,EmptyBelongsToStatement
,EmptyBitEffectiveStatement
,EmptyBitStatement
,EmptyCaseStatement
,EmptyChoiceEffectiveStatement
,EmptyChoiceStatement
,EmptyConfigEffectiveStatement
,EmptyConfigStatement
,EmptyContactEffectiveStatement
,EmptyContactStatement
,EmptyContainerEffectiveStatement
,EmptyContainerStatement
,EmptyDefaultEffectiveStatement
,EmptyDefaultStatement
,EmptyDescriptionEffectiveStatement
,EmptyDescriptionStatement
,EmptyEnumEffectiveStatement
,EmptyEnumStatement
,EmptyErrorAppTagEffectiveStatement
,EmptyErrorAppTagStatement
,EmptyErrorMessageEffectiveStatement
,EmptyErrorMessageStatement
,EmptyExtensionStatement
,EmptyFeatureEffectiveStatement
,EmptyFeatureStatement
,EmptyForeignKeyEffectiveStatement
,EmptyFractionDigitsEffectiveStatement
,EmptyFractionDigitsStatement
,EmptyGroupingEffectiveStatement
,EmptyGroupingStatement
,EmptyIdentityEffectiveStatement
,EmptyIdentityStatement
,EmptyIfFeatureEffectiveStatement
,EmptyIfFeatureStatement
,EmptyIncludeEffectiveStatement
,EmptyIncludeStatement
,EmptyInputStatement
,EmptyKeyStatement
,EmptyLeafEffectiveStatement
,EmptyLeafListEffectiveStatement
,EmptyLeafListStatement
,EmptyLeafStatement
,EmptyLengthEffectiveStatement
,EmptyLengthStatement
,EmptyListEffectiveStatement
,EmptyListStatement
,EmptyLocalKeyEffectiveStatement
,EmptyMandatoryEffectiveStatement
,EmptyMandatoryStatement
,EmptyMaxElementsEffectiveStatement
,EmptyMaxElementsStatement
,EmptyMinElementsEffectiveStatement
,EmptyMinElementsStatement
,EmptyModifierEffectiveStatement
,EmptyModifierStatement
,EmptyMustEffectiveStatement
,EmptyMustStatement
,EmptyNamespaceEffectiveStatement
,EmptyNamespaceStatement
,EmptyNotificationStatement
,EmptyOrderedByEffectiveStatement
,EmptyOrderedByStatement
,EmptyOrganizationEffectiveStatement
,EmptyOrganizationStatement
,EmptyOutputStatement
,EmptyPathEffectiveStatement
,EmptyPathStatement
,EmptyPatternEffectiveStatement
,EmptyPatternStatement
,EmptyPositionEffectiveStatement
,EmptyPositionStatement
,EmptyPrefixEffectiveStatement
,EmptyPrefixStatement
,EmptyPresenceEffectiveStatement
,EmptyPresenceStatement
,EmptyRangeEffectiveStatement
,EmptyRangeStatement
,EmptyReferenceEffectiveStatement
,EmptyReferenceStatement
,EmptyRequireInstanceEffectiveStatement
,EmptyRequireInstanceStatement
,EmptyRevisionDateEffectiveStatement
,EmptyRevisionDateStatement
,EmptyRevisionEffectiveStatement
,EmptyRevisionStatement
,EmptyRpcStatement
,EmptyStatusEffectiveStatement
,EmptyStatusStatement
,EmptyTypedefStatement
,EmptyTypeStatement
,EmptyUniqueEffectiveStatement
,EmptyUniqueStatement
,EmptyUnitsEffectiveStatement
,EmptyUnitsStatement
,EmptyUsesStatement
,EmptyValueEffectiveStatement
,EmptyValueStatement
,EmptyWhenEffectiveStatement
,EmptyWhenStatement
,EmptyYangVersionEffectiveStatement
,EmptyYangVersionStatement
,EmptyYinElementEffectiveStatement
,EmptyYinElementStatement
,ExtensionEffectiveStatementImpl
,ForwardingDeclaredStatement
,ImportEffectiveStatementImpl
,ImportStatementImpl
,ModuleStatementImpl
,NotificationEffectiveStatementImpl
,RefActionStatement
,RefAnydataStatement
,RefAnyxmlStatement
,RefArgumentStatement
,RefAugmentStatement
,RefBaseStatement
,RefBelongsToStatement
,RefBitsSpecification
,RefBitStatement
,RefCaseStatement
,RefChoiceStatement
,RefConfigStatement
,RefContactStatement
,RefContainerStatement
,RefDefaultStatement
,RefDescriptionStatement
,RefDeviateStatement
,RefDeviationStatement
,RefEnumStatement
,RefErrorAppTagStatement
,RefErrorMessageStatement
,RefExtensionStatement
,RefFeatureStatement
,RefFractionDigitsStatement
,RefGroupingStatement
,RefIdentityStatement
,RefIfFeatureStatement
,RefImportStatement
,RefIncludeStatement
,RefineEffectiveStatementImpl
,RefineStatementImpl
,RefInputStatement
,RefKeyStatement
,RefLeafListStatement
,RefLeafStatement
,RefLengthStatement
,RefListStatement
,RefMandatoryStatement
,RefMaxElementsStatement
,RefMinElementsStatement
,RefModifierStatement
,RefModuleStatement
,RefMustStatement
,RefNamespaceStatement
,RefNotificationStatement
,RefOrderedByStatement
,RefOrganizationStatement
,RefOutputStatement
,RefPathStatement
,RefPatternStatement
,RefPositionStatement
,RefPrefixStatement
,RefPresenceStatement
,RefRangeStatement
,RefReferenceStatement
,RefRefineStatement
,RefRequireInstanceStatement
,RefRevisionDateStatement
,RefRevisionStatement
,RefRpcStatement
,RefStatusStatement
,RefSubmoduleStatement
,RefTypedefStatement
,RefTypeStatement
,RefUniqueStatement
,RefUnitsStatement
,RefUnrecognizedStatement
,RefUsesStatement
,RefValueStatement
,RefWhenStatement
,RefYangVersionStatement
,RefYinElementStatement
,RegularActionStatement
,RegularAnydataEffectiveStatement
,RegularAnydataStatement
,RegularAnyxmlEffectiveStatement
,RegularAnyxmlStatement
,RegularArgumentEffectiveStatement
,RegularArgumentStatement
,RegularAugmentStatement
,RegularBaseEffectiveStatement
,RegularBaseStatement
,RegularBelongsToEffectiveStatement
,RegularBelongsToStatement
,RegularBitEffectiveStatement
,RegularBitStatement
,RegularCaseStatement
,RegularChoiceEffectiveStatement
,RegularChoiceStatement
,RegularConfigEffectiveStatement
,RegularConfigStatement
,RegularContactEffectiveStatement
,RegularContactStatement
,RegularContainerEffectiveStatement
,RegularContainerStatement
,RegularDefaultEffectiveStatement
,RegularDefaultStatement
,RegularDescriptionEffectiveStatement
,RegularDescriptionStatement
,RegularEnumEffectiveStatement
,RegularEnumStatement
,RegularErrorAppTagEffectiveStatement
,RegularErrorAppTagStatement
,RegularErrorMessageEffectiveStatement
,RegularErrorMessageStatement
,RegularExtensionStatement
,RegularFeatureEffectiveStatement
,RegularFeatureStatement
,RegularForeignKeyEffectiveStatement
,RegularFractionDigitsEffectiveStatement
,RegularFractionDigitsStatement
,RegularGroupingEffectiveStatement
,RegularGroupingStatement
,RegularIdentityEffectiveStatement
,RegularIdentityStatement
,RegularIfFeatureEffectiveStatement
,RegularIfFeatureStatement
,RegularIncludeEffectiveStatement
,RegularIncludeStatement
,RegularInputStatement
,RegularKeyStatement
,RegularLeafEffectiveStatement
,RegularLeafListEffectiveStatement
,RegularLeafListStatement
,RegularLeafStatement
,RegularLengthEffectiveStatement
,RegularLengthStatement
,RegularListEffectiveStatement
,RegularListStatement
,RegularLocalKeyEffectiveStatement
,RegularMandatoryEffectiveStatement
,RegularMandatoryStatement
,RegularMaxElementsEffectiveStatement
,RegularMaxElementsStatement
,RegularMinElementsEffectiveStatement
,RegularMinElementsStatement
,RegularModifierEffectiveStatement
,RegularModifierStatement
,RegularMustEffectiveStatement
,RegularMustStatement
,RegularNamespaceEffectiveStatement
,RegularNamespaceStatement
,RegularNotificationStatement
,RegularOrderedByEffectiveStatement
,RegularOrderedByStatement
,RegularOrganizationEffectiveStatement
,RegularOrganizationStatement
,RegularOutputStatement
,RegularPathEffectiveStatement
,RegularPathStatement
,RegularPatternEffectiveStatement
,RegularPatternStatement
,RegularPositionEffectiveStatement
,RegularPositionStatement
,RegularPrefixEffectiveStatement
,RegularPrefixStatement
,RegularPresenceEffectiveStatement
,RegularPresenceStatement
,RegularRangeEffectiveStatement
,RegularRangeStatement
,RegularReferenceEffectiveStatement
,RegularReferenceStatement
,RegularRequireInstanceEffectiveStatement
,RegularRequireInstanceStatement
,RegularRevisionDateEffectiveStatement
,RegularRevisionDateStatement
,RegularRevisionEffectiveStatement
,RegularRevisionStatement
,RegularRpcStatement
,RegularStatusEffectiveStatement
,RegularStatusStatement
,RegularTypedefStatement
,RegularTypeStatement
,RegularUniqueEffectiveStatement
,RegularUniqueStatement
,RegularUnitsEffectiveStatement
,RegularUnitsStatement
,RegularUsesStatement
,RegularValueEffectiveStatement
,RegularValueStatement
,RegularWhenEffectiveStatement
,RegularWhenStatement
,RegularYangVersionEffectiveStatement
,RegularYangVersionStatement
,RegularYinElementEffectiveStatement
,RegularYinElementStatement
,RpcEffectiveStatementImpl
,SlimLeafListEffectiveStatement
,SubmoduleStatementImpl
,TypedefEffectiveStatementImpl
,UndeclaredCaseEffectiveStatement
,UndeclaredInputEffectiveStatement
,UndeclaredLeafEffectiveStatement
,UndeclaredOutputEffectiveStatement
,UnrecognizedStatementImpl
public sealed interface ModelStatement<A>
permits DeclaredStatement<A>, EffectiveStatement<A,D> (not exhaustive)
Model statement. There are two base types of model statements:
DeclaredStatement
, which is to say, a statement as was defined in original source. This representation can be used during computation of effective model or during transformations of the YANG model from one serialization format to another -- for example creating a.yin
file from a.yang
file, or vice versa.EffectiveStatement
, which is to say, a statement in its canonical form after all YANG language constructs have been applied to it. This representation has different traits as compared to the declared form, such as:- its substatement layout may differ, for example to account for implicit
case
,input
andoutput
statements - it will omit
feature
and statements predicated onif-feature
if the feature in question is not supported - it will contain magic entries, like those in
ietf-restconf.yang
'soperations
container - the effects of a
uses
oraugment
statement being present
config
statementsstatus
statements
EffectiveStatement
model implies effective statements should be created so that any statement can be examined for the value, this has a significant scalability impact: for example in the case of agrouping
definition,config
is ignored, whereas in other contexts, even when introduced via auses
statement, it becomes eithertrue
orfalse
. A similar situation occurs in case ofstatus
statements, yet it is less severe. In both these cases real-life users are very scarce and this information can be computed given a particularEffectiveStatement
tree position and is a sort of a parent reference (albeit very weak). For these two, and perhaps some other, statements the object model manifestation is subject to API contract.- its substatement layout may differ, for example to account for implicit
-
Method Summary
Modifier and TypeMethodDescription@NonNull A
argument()
Returns statement argument.@NonNull StatementDefinition
Statement Definition of this statement.
-
Method Details
-
statementDefinition
@NonNull StatementDefinition statementDefinition()Statement Definition of this statement.- Returns:
- definition of this statement.
-
argument
@NonNull A argument()Returns statement argument.- Returns:
- statement argument.
-