[YANGTOOLS-1453] Do not use Class for ParserNamespace identification Created: 18/Aug/22  Updated: 03/Oct/22  Resolved: 03/Oct/22

Status: Resolved
Project: yangtools
Component/s: parser
Affects Version/s: None
Fix Version/s: 10.0.0

Type: Improvement Priority: High
Reporter: Robert Varga Assignee: Robert Varga
Resolution: Done Votes: 0
Labels: pt
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

All namespace interactions are centered around ParserNamespace, which is an interface and its concretizations, which are also interfaces, hence it is not clear what is an abstract concept and what is a real namespace.
Furthermore we ParserNamespace.class equivalents in API calls, which leads to inscrutable interactions, as it looking for users of a particular namespace means searching for Namespace.class references.

This is an artifact of the proof-of-concept design and a few unfortunate entanglements of ParserNamespaces with other constructs.

Refactor these to the point where we only have ParserNamespace and SchemaTreeNamespace classes and all other identifiers being singleton objects. To that effect ParserNamespace needs to become a proper yang.concepts.Identifier and needs to be used as such.


Generated at Wed Feb 07 20:56:12 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.