Class BindsInDefinition

java.lang.Object
dev.frostlake.executor.commands.BindsInDefinition

public final class BindsInDefinition extends Object
A definition may not carry an unnamed bind. A ? written into a view's query or a UDF's body is refused when the object is CREATED — "Bind variables not allowed in view and UDF definitions." — where the same ? in an ordinary statement is the unset-bind refusal instead. A stored PROCEDURE's body is not held to this: the account creates one whose block writes ? (live-verified).

The refusal points at the ?: in a view, at its place in the whole statement; in a routine body, at its place within the BODY, counted from one — the frame every body-compilation refusal uses.

  • Method Details

    • reject

      public static void reject(org.antlr.v4.runtime.tree.ParseTree definition)
      Refuse a ? anywhere in a definition's parse tree.
      Parameters:
      definition - the view's query, or any part of a statement that defines an object
    • rejectInBody

      public static void rejectInBody(String body)
      Refuse a ? anywhere in a routine's body text. The body is LEXED rather than scanned, so a question mark inside a string literal or a comment is left alone.
      Parameters:
      body - the body as written, already stripped of its delimiters