Defer statement initialization in InferredStatementContext (YANGTOOLS-784)

[YANGTOOLS-1161] Reformulate StatementContextFactory.createEffective() Created: 30/Oct/20  Updated: 25/Nov/20  Resolved: 25/Nov/20

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

Type: Sub-task Priority: Medium
Reporter: Robert Varga Assignee: Miroslav Kovac
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Issue split
split to YANGTOOLS-1184 Release InferredStatementContext's ef... Resolved

 Description   

Rather than passing down StmtContext and its parent via StmtContext.getParent() we want to be in control of what gets accessed during statement build phase.

The core contract is StatementContextFactory, which will need two replacement interfaces, and the primary implementation is StatementContextBase.

We then need to audit all subclasses of StatementContextBase and migrate their accesses to the new interfaces.

InferredStatement context plays a role here in that will plugin into these interfaces with methods which do not force memoized materialization in StatementContextBase


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