Encapsulate YangStatementParserListenerImpl.walk() 76/68676/2
authorRobert Varga <robert.varga@pantheon.tech>
Sun, 25 Feb 2018 20:02:35 +0000 (21:02 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Sun, 25 Feb 2018 22:12:23 +0000 (23:12 +0100)
commit089d3b60421bd0a261ce2ed88e5a7a948d7bfdc1
treeb73dd78b22c9c917899135994fd447f958993804
parent33880b0d26523262e19c4634f7a83d3bc7fa7688
Encapsulate YangStatementParserListenerImpl.walk()

As it turns out, the contract between YangStatementStreamSource
is one of walking a tree with a set of parameters. Make sure we
encapsulate this contract, so that it can be efficiently implemented
using a visitor.

This has the benefit of discarding unneeded state more quickly
and not retaining it past errors. It will also allow us to very
simply convert YangStatementParserListenerImpl into a visitor.

JIRA: YANGTOOLS-713
Change-Id: Iac8c4979fb31cb527788837b41d4bbf17ce4b3cf
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/repo/YangStatementParserListenerImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/repo/YangStatementStreamSource.java