AST

enum AST(val begin: Ptr, val end: Ptr)

AST дерево

Типы узлов

  • Id - Идентификатор - буквенная последовательность
  • True - Идентификатор, пример true
  • False - Идентификатор, пример false
  • Null - Идентификатор, пример null
  • Str - Строковой литерал, пример "sample"
  • Num - Число, пример -12.3
  • Arr - Массив, пример [ 1, "b" ]
  • Field - поле/свойство объекта и его значение, пример "field" : 2
  • Obj - объект, пример { "field": 1, "a": true }
Value parameters:
begin

начало в тексте

end

конец в тексте

Companion:
object
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
case Id
case True
case False
case Null
case Str
case Num
case Arr
case Field
case Obj
case Comment

Type members

Enum entries

case Arr(items: Seq[AST], begin0: Ptr, end0: Ptr) extends AST
case Comment(tok: SLComment, begin0: Ptr, end0: Ptr) extends AST
case False(tok: Identifier, begin0: Ptr, end0: Ptr) extends AST
case Field(tok: Str | Identifier, name: String, value: AST, begin0: Ptr, end0: Ptr) extends AST
case Id(tok: Identifier, begin0: Ptr, end0: Ptr) extends AST
case Null(tok: Identifier, begin0: Ptr, end0: Ptr) extends AST
case Num(tok: Number, begin0: Ptr, end0: Ptr) extends AST
case Obj(body: Seq[AST], begin0: Ptr, end0: Ptr) extends AST with ObjOpt
case Str(decode: String, tok: Str, begin0: Ptr, end0: Ptr) extends AST
case True(tok: Identifier, begin0: Ptr, end0: Ptr) extends AST

Value members

Concrete methods

def bool: Option[Boolean]
Extension method from xyz.cofe.jtfm.store.json
def id: Option[String]
Extension method from xyz.cofe.jtfm.store.json
def isNull: Boolean
Extension method from xyz.cofe.jtfm.store.json
def json: String
Extension method from xyz.cofe.jtfm.store.json
def list: Option[List[AST]]
Extension method from xyz.cofe.jtfm.store.json
def num: Option[Double]
Extension method from xyz.cofe.jtfm.store.json
def obj: Option[Map[String, AST]]
Extension method from xyz.cofe.jtfm.store.json
def str: Option[String]
Extension method from xyz.cofe.jtfm.store.json
def toJson: Either[String, JS]
Extension method from xyz.cofe.jtfm.store.json