Make BitsTypeDefinition.Bit only a DocumentedNode.WithStatus 70/86970/8
authorRobert Varga <robert.varga@pantheon.tech>
Wed, 15 Jan 2020 22:11:11 +0000 (23:11 +0100)
committerRobert Varga <nite@hq.sk>
Wed, 12 Feb 2020 14:45:13 +0000 (14:45 +0000)
commit297de2dd9583f65b2435e613114c146e6b7f0a6d
tree9025633c6b63b586c0bf1d53a682cf1f337e7e25
parentfb6e2a80c3b7b6991bc7af05fddd42c6795e2c7d
Make BitsTypeDefinition.Bit only a DocumentedNode.WithStatus

The concept that a bit is a SchemaNode directly contradicts RFC7950,
which does not list it as such. Yes, it does have a name that is
an identifier, but it really does not have a namespace.

Fix this issue, which ends up improving our memory footprint by quite
a bit.

JIRA: YANGTOOLS-1072
Change-Id: Id88e14743f9be43f7e4096728bf3715c38470e1a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 files changed:
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/stmt/BitEffectiveStatement.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/stmt/BitStatement.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/BitsTypeDefinition.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BitBuilder.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BitImpl.java
yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/type/BitImplTest.java
yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/type/TypeTest.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/EffectiveStmtUtils.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/bit/AbstractBitStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/bit/BitEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/bit/BitStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/BitsSpecificationEffectiveStatement.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/BitsTypeEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/EffectiveTypeUtil.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6887Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/EffectiveStatementTypeTest.java