Refactor typedef implementations 58/87458/2
authorRobert Varga <robert.varga@pantheon.tech>
Wed, 5 Feb 2020 21:37:34 +0000 (22:37 +0100)
committerRobert Varga <nite@hq.sk>
Thu, 6 Feb 2020 10:13:29 +0000 (10:13 +0000)
commit69637da1f7eb51af6723ae3e4d1069d28ab32d17
tree14ad2e8e7b3bcefe64b235e8194ca5b2ec8d27e3
parent2dae51f10bd4efdc355e537b6eac81257fb68138
Refactor typedef implementations

A typical typedef costs about 56 bytes, which is a bit heavy given
that good models have a lot of these. Optimize layout and offload
type definition builder.

JIRA: YANGTOOLS-1065
Change-Id: I71fe350edec3ce015dabf36936e6f37bb41b3f8e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/stmt/TypeEffectiveStatement.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/stmt/TypeStatement.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/stmt/TypedefEffectiveStatement.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/stmt/TypedefStatement.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/AbstractEffectiveSchemaNode.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/BuiltinEffectiveStatement.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/BuiltinTypeStatement.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/typedef/EmptyTypedefStatement.java [moved from yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/typedef/TypedefStatementImpl.java with 58% similarity]
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/typedef/RegularTypedefStatement.java [new file with mode: 0644]
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/typedef/TypedefEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/typedef/TypedefStatementSupport.java