object ParserUtils
A collection of utility methods for use during the parsing process.
- Alphabetic
- By Inheritance
- ParserUtils
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- implicit final class EnhancedLogicalPlan extends AnyVal
Some syntactic sugar which makes it easier to work with optional clauses for LogicalPlans.
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val ESCAPED_CHAR_PATTERN: Regex
- val OCTAL_CHAR_PATTERN: Regex
- val U16_CHAR_PATTERN: Regex
- val U32_CHAR_PATTERN: Regex
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def checkDuplicateClauses[T](nodes: List[T], clauseName: String, ctx: ParserRuleContext): Unit
- def checkDuplicateKeys[T](keyPairs: Seq[(String, T)], ctx: ParserRuleContext): Unit
Check if duplicate keys exist in a set of key-value pairs.
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def command(ctx: ParserRuleContext): String
Get the command which created the token.
- def entry(key: String, value: Token): Seq[(String, String)]
Collect the entries if any.
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- val escapedIdentifier: Regex
the column name pattern in quoted regex without qualifier
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def interval(start: Token, end: Token): String
Get all the text which between the given start and end tokens.
Get all the text which between the given start and end tokens. When we need to extract everything between two tokens including all spaces we should use this method instead of defined a named Antlr4 rule for .*?, which somehow parse "a b" -> "ab" in some cases
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def operationNotAllowed(message: String, ctx: ParserRuleContext): Nothing
- def position(token: Token): Origin
Get the origin (line and position) of the token.
- val qualifiedEscapedIdentifier: Regex
the column name pattern in quoted regex with qualifier
- def remainder(token: Token): String
Get all the text which comes after the given token.
- def remainder(ctx: ParserRuleContext): String
Get all the text which comes after the given rule.
- def source(ctx: ParserRuleContext): String
Get the code that creates the given node.
- def string(node: TerminalNode): String
Convert a string node into a string.
- def string(token: Token): String
Convert a string token into a string.
- def stringWithoutUnescape(node: TerminalNode): String
Convert a string node into a string without unescaping.
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def unescapeSQLString(b: String): String
Unescape backslash-escaped string enclosed by quotes.
- def validate(f: => Boolean, message: String, ctx: ParserRuleContext): Unit
Validate the condition.
Validate the condition. If it doesn't throw a parse exception.
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- def withOrigin[T](ctx: ParserRuleContext)(f: => T): T
Register the origin of the context.
Register the origin of the context. Any TreeNode created in the closure will be assigned the registered origin. This method restores the previously set origin after completion of the closure.