Class ProxyParseTreeListener
java.lang.Object
io.github.douira.glsl_transformer.generic.ProxyParseTreeListener
- All Implemented Interfaces:
org.antlr.v4.runtime.tree.ParseTreeListener
public class ProxyParseTreeListener
extends Object
implements org.antlr.v4.runtime.tree.ParseTreeListener
This class was taken from here
and was added to the public domain by the author DaveJarvis
Instances of this class allows multiple listeners to receive events while
walking the parse tree. For example:
ProxyParseTreeListener proxy = new ProxyParseTreeListener(); ParseTreeListener listener1 = ... ; ParseTreeListener listener2 = ... ; proxy.add( listener1 ); proxy.add( listener2 ); ParseTreeWalker.DEFAULT.walk( proxy, ctx );
-
Constructor Summary
ConstructorsConstructorDescriptionCreates a new proxy without an empty list of listeners.ProxyParseTreeListener(List<org.antlr.v4.runtime.tree.ParseTreeListener> listeners) Creates a new proxy with the given list of listeners. -
Method Summary
Modifier and TypeMethodDescriptionvoidadd(org.antlr.v4.runtime.tree.ParseTreeListener listener) Adds the given listener to the list of event notification recipients.voidenterEveryRule(org.antlr.v4.runtime.ParserRuleContext ctx) voidexitEveryRule(org.antlr.v4.runtime.ParserRuleContext ctx) booleanisEmpty()Checks if the list of listeners is empty.booleanremove(org.antlr.v4.runtime.tree.ParseTreeListener listener) Removes the given listener to the list of event notification recipients.voidsetListeners(List<org.antlr.v4.runtime.tree.ParseTreeListener> listeners) Changes the list of listeners to receive events.voidvisitErrorNode(org.antlr.v4.runtime.tree.ErrorNode node) voidvisitTerminal(org.antlr.v4.runtime.tree.TerminalNode node)
-
Constructor Details
-
ProxyParseTreeListener
public ProxyParseTreeListener()Creates a new proxy without an empty list of listeners. Add listeners before walking the tree. -
ProxyParseTreeListener
Creates a new proxy with the given list of listeners.- Parameters:
listeners- A list of listerners to receive events.
-
-
Method Details
-
enterEveryRule
public void enterEveryRule(org.antlr.v4.runtime.ParserRuleContext ctx) - Specified by:
enterEveryRulein interfaceorg.antlr.v4.runtime.tree.ParseTreeListener
-
exitEveryRule
public void exitEveryRule(org.antlr.v4.runtime.ParserRuleContext ctx) - Specified by:
exitEveryRulein interfaceorg.antlr.v4.runtime.tree.ParseTreeListener
-
visitErrorNode
public void visitErrorNode(org.antlr.v4.runtime.tree.ErrorNode node) - Specified by:
visitErrorNodein interfaceorg.antlr.v4.runtime.tree.ParseTreeListener
-
visitTerminal
public void visitTerminal(org.antlr.v4.runtime.tree.TerminalNode node) - Specified by:
visitTerminalin interfaceorg.antlr.v4.runtime.tree.ParseTreeListener
-
add
public void add(org.antlr.v4.runtime.tree.ParseTreeListener listener) Adds the given listener to the list of event notification recipients.- Parameters:
listener- A listener to begin receiving events.
-
remove
public boolean remove(org.antlr.v4.runtime.tree.ParseTreeListener listener) Removes the given listener to the list of event notification recipients.- Parameters:
listener- A listener to stop receiving events.- Returns:
- false The listener was not registered to receive events.
-
setListeners
Changes the list of listeners to receive events. If the given list of listeners is null, an empty list will be created.- Parameters:
listeners- A list of listeners to receive tree walking events.
-
isEmpty
public boolean isEmpty()Checks if the list of listeners is empty.- Returns:
trueif there are not listeners in the list
-