Object

sigmastate.lang

SigmaParser

Related Doc: package lang

Permalink

object SigmaParser extends Exprs with Types with Core

Main facade to ErgoScript parser implementation.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SigmaParser
  2. Exprs
  3. Types
  4. Core
  5. Literals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. implicit class ParserOps[+T] extends AnyRef

    Permalink
    Definition Classes
    Literals
  2. class WsCtx extends AnyRef

    Permalink

    Parsing context of expressions (see derived classes).

    Parsing context of expressions (see derived classes).

    Definition Classes
    Exprs

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. def *[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  4. def :[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  5. def <:[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  6. def =[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  7. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  8. def =>[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  9. def >:[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  10. def @[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  11. def Annot[_](implicit arg0: P[Any]): P0

    Permalink

    Annotation with optional arguments, result is ignored.

    Annotation with optional arguments, result is ignored.

    Definition Classes
    Types
  12. def AnnotType[_](implicit arg0: P[Any]): P[SType]

    Permalink
    Definition Classes
    Types
  13. def BacktickId[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  14. def BindPattern[_](implicit arg0: P[Any]): P[Any]

    Permalink
    Definition Classes
    Exprs
  15. def Block[_](implicit arg0: P[Any]): P[Value[SType]]

    Permalink

    Parses simple blocks { ... }

    Parses simple blocks { ... }

    Definition Classes
    ExprsLiterals
  16. def BlockDef[_](implicit arg0: P[Any]): P[Value[SType]]

    Permalink

    Parses a definition in a block val name = expr

    Parses a definition in a block val name = expr

    Definition Classes
    SigmaParserExprs
  17. def BlockLambda[_](implicit arg0: P[Any]): P[Seq[(String, SType)]]

    Permalink
    Definition Classes
    Exprs
  18. def CompoundType[_](implicit arg0: P[Any]): P[SType]

    Permalink
    Definition Classes
    Types
  19. def Dcl[_](implicit arg0: P[Any]): P[Value[SType]]

    Permalink

    Parser of val name = expr syntax.

    Parser of val name = expr syntax.

    returns

    an instance of ValNode

    Definition Classes
    Types
  20. def DottyExtMethodSubj[_](implicit arg0: P[Any]): P[(String, SType)]

    Permalink
    Definition Classes
    Types
  21. object ExprCtx extends WsCtx

    Permalink
    Definition Classes
    Exprs
  22. def ExprLiteral[_](implicit arg0: P[Any]): P[Constant[SMonoType with SProduct with Serializable { type WrappedType >: Long with Int with Boolean with String }]]

    Permalink
    Definition Classes
    Core
  23. def Exprs[_](implicit arg0: P[Any]): P[Seq[Value[SType]]]

    Permalink

    Sequence of comma separated expressions.

    Sequence of comma separated expressions.

    Definition Classes
    Types
  24. object FreeCtx extends WsCtx

    Permalink
    Definition Classes
    Exprs
  25. def FunDef[_](implicit arg0: P[Any]): P[Val]

    Permalink

    Parses name[T1, ..., Tn](a1, ..., aM): R = expr

    Parses name[T1, ..., Tn](a1, ..., aM): R = expr

    Definition Classes
    Exprs
  26. def FunSig[_](implicit arg0: P[Any]): P[Seq[Seq[(String, SType)]]]

    Permalink

    Parses [T1,T2](a1: T, a2: S)

    Parses [T1,T2](a1: T, a2: S)

    Definition Classes
    Types
  27. def Id[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  28. def InfixType[_](implicit arg0: P[Any]): P[SType]

    Permalink
    Definition Classes
    Types
  29. object Literals

    Permalink
    Definition Classes
    Literals
  30. def Newline[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Literals
  31. def NotNewline[_](implicit arg0: P[Any]): P0

    Permalink

    Look ahead whitespaces, but not new line.

    Look ahead whitespaces, but not new line.

    Definition Classes
    Literals
  32. def OneNLMax[_](implicit arg0: P[Any]): P0

    Permalink
    Definition Classes
    Literals
  33. def ParenArgList[_](implicit arg0: P[Any]): P[Value[SType]]

    Permalink
    Definition Classes
    Exprs
  34. def Pattern[_](implicit arg0: P[Any]): P0

    Permalink

    Parses pattern, like in the expression val <pattern> = expr

    Parses pattern, like in the expression val <pattern> = expr

    Definition Classes
    ExprsLiterals
  35. def PostDotCheck[_](implicit arg0: P[Any]): P0

    Permalink

    Sketchy way to whitelist a few suffixes that come after a .

    Sketchy way to whitelist a few suffixes that come after a . select; apart from these and IDs, everything else is illegal

    Definition Classes
    Core
  36. def PostfixType[_](implicit arg0: P[Any]): P[SType]

    Permalink
    Definition Classes
    Types
  37. def Semi[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Literals
  38. def Semis[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Literals
  39. def SimpleType[_](implicit arg0: P[Any]): P[SType]

    Permalink
    Definition Classes
    Types
  40. def StableId[_](implicit arg0: P[Any]): P[SValue]

    Permalink
    Definition Classes
    Core
  41. object StatCtx extends WsCtx

    Permalink
    Definition Classes
    Exprs
  42. def TrailingComma[_](implicit arg0: P[Any]): P0

    Permalink

    Parses optional trailing comma.

    Parses optional trailing comma.

    Definition Classes
    Literals
  43. def Type[_](implicit arg0: P[Any]): P[SType]

    Permalink
    Definition Classes
    Types
  44. def TypeArgs[_](implicit arg0: P[Any]): P[Seq[SType]]

    Permalink
    Definition Classes
    Types
  45. def TypeExpr[_](implicit arg0: P[Any]): P[Value[SType]]

    Permalink

    Parser of typed expressions.

    Parser of typed expressions.

    returns

    expression of ErgoTree IR

    Definition Classes
    ExprsTypes
  46. def TypeId[_](implicit arg0: P[Any]): P[SType]

    Permalink
    Definition Classes
    Types
  47. def ValVarDef[_](implicit arg0: P[Any]): P[Value[SType]]

    Permalink

    Parser of name = expr syntax.

    Parser of name = expr syntax.

    returns

    an instance of ValNode

    Definition Classes
    SigmaParserTypes
  48. def VarId[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  49. def WL[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Literals
  50. def WL0[_](implicit arg0: P[Any]): P[Unit]

    Permalink

    Parses whitespace, including newlines.

    Parses whitespace, including newlines. This is the default for most things

    Definition Classes
    Literals
  51. def WS[_](implicit arg0: P[Any]): P[Unit]

    Permalink

    Parses all whitespace, excluding newlines.

    Parses all whitespace, excluding newlines. This is only really useful in e.g. {} blocks, where we want to avoid capturing newlines so semicolon-inference would work

    Definition Classes
    Literals
  52. def _[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  53. def _*[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  54. def apply(script: String): Parsed[Value[_ <: SType]]

    Permalink

    Parse script into ErgoTree expression.

  55. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  56. def atSrcPos[A](parserIndex: Int)(thunk: ⇒ A): A

    Permalink

    Set the current source position (dynamic variable) and execute the given thunk.

    Set the current source position (dynamic variable) and execute the given thunk.

    Definition Classes
    SigmaParserLiterals
  57. def block(stats: Seq[SValue]): SValue

    Permalink
    Attributes
    protected
    Definition Classes
    Exprs
  58. val builder: SigmaBuilder

    Permalink

    A builder instance used by the parsers to create ErgoTree expressions.

    A builder instance used by the parsers to create ErgoTree expressions.

    Definition Classes
    Literals
  59. def case[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  60. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  61. def def[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  62. def else[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  63. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  64. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  65. def extends[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  66. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  67. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  68. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  69. def if[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  70. def implicit[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  71. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  72. def lambda(args: Seq[Value[SType]], body: Value[SType]): Value[SType]

    Permalink

    Constructor of lambda nodes

    Constructor of lambda nodes

    Attributes
    protected
    Definition Classes
    Exprs
  73. def lazy[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  74. implicit val logger: Logger

    Permalink
  75. def match[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  76. def mkBinaryOp(l: Value[SType], opName: String, r: Value[SType]): Value[SType]

    Permalink

    Constructor of ErgoTree binary operation.

    Constructor of ErgoTree binary operation.

    Definition Classes
    SigmaParserCore
  77. def mkInfixTree(lhs: SValue, rhss: Seq[(String, SValue)]): SValue

    Permalink

    Build expression tree from a list of operations respecting precedence.

    Build expression tree from a list of operations respecting precedence. Example: a + b * c => a + (b * c)

    Attributes
    protected[sigmastate.lang]
    Definition Classes
    Exprs
  78. def mkUnaryOp(opName: String, arg: Value[SType]): Value[SType]

    Permalink

    Constructor of ErgoTree unary operation.

    Constructor of ErgoTree unary operation.

    Definition Classes
    SigmaParserCore
  79. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  80. def new[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  81. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  82. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  83. def parseType(str: String): SType

    Permalink

    Parse str into SType.

    Parse str into SType.

    str

    string representation of type in ErgoScript syntax

  84. val predefTypes: Map[String, SType with Serializable { type WrappedType >: Unit with special.sigma.Box with String with special.sigma.PreHeader with special.sigma.Header with special.sigma.SigmaDslBuilder with special.sigma.SigmaProp with special.sigma.GroupElement with special.sigma.Context with special.sigma.AvlTree with special.sigma.BigInt with Long with Int with Short with Byte with Boolean }]

    Permalink

    This map should be in sync with SType.allPredefTypes

    This map should be in sync with SType.allPredefTypes

    Definition Classes
    Types
  85. def srcCtx(parserIndex: Int): SourceContext

    Permalink

    Create SourceContext using current input string and the given index.

    Create SourceContext using current input string and the given index.

    Definition Classes
    SigmaParserLiterals
  86. def super[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  87. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  88. def this[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  89. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  90. def type[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  91. def val[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  92. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  93. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  94. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  95. def with[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  96. def {[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core
  97. def }[_](implicit arg0: P[Any]): P[Unit]

    Permalink
    Definition Classes
    Core

Inherited from Exprs

Inherited from Types

Inherited from Core

Inherited from Literals

Inherited from AnyRef

Inherited from Any

Ungrouped