package ast
- Alphabetic
- Public
- All
Type Members
-
abstract
class
AST extends Tok[PTR]
AST узел
-
class
ASTIterator extends Iterator[ASTPath]
Итератор по дереву AST
-
class
ASTPath extends AnyRef
Путь в AST дереве
-
class
BinaryAST extends AST
Бинарный оператор.
Бинарный оператор.
Пример парсинг выражения
123 + 234 * 345
Дерево AST:
BinaryAST + -| LiteralAST IntNumberTok 123 -| BinaryAST * -|-| LiteralAST IntNumberTok 234 -|-| LiteralAST IntNumberTok 345
-
class
CallAST extends AST
Вызов метода/функции
Вызов метода/функции
Пример парсинг выражения
a( 10, 12 ) + b.a( 1, 2, 3 )
Дерево AST:
BinaryAST + -| CallAST -|-| IdentifierAST IdentifierTok a -|-| LiteralAST IntNumberTok 10 -|-| LiteralAST IntNumberTok 12 -| CallAST -|-| PropertyAST a -|-|-| IdentifierAST IdentifierTok b -|-| LiteralAST IntNumberTok 1 -|-| LiteralAST IntNumberTok 2 -|-| LiteralAST IntNumberTok 3
-
class
DelegateAST extends AST
Ссылка на AST, испольщуется в скобочных выражениях
Ссылка на AST, испольщуется в скобочных выражениях
Пример парсинг выражения
( 123 - 234 ) * 2
Дерево AST:
BinaryAST * -| DelegateAST -|-| BinaryAST - -|-|-| LiteralAST IntNumberTok 123 -|-|-| LiteralAST IntNumberTok 234 -| LiteralAST IntNumberTok 2
-
class
IdentifierAST extends AST
Ссылка на переменную
Ссылка на переменную
Пример парсинг выражения
a - b / c
Дерево AST:
BinaryAST - -| IdentifierAST IdentifierTok a -| BinaryAST / -|-| IdentifierAST IdentifierTok b -|-| IdentifierAST IdentifierTok c
-
class
LambdaAST extends AST
Определение лямбды
Определение лямбды
Пример парсинг выражения
a:int , b:int => a+b
Дерево AST:
LambdaAST -| ParamAST IdentifierAST IdentifierTok a -|-| IdentifierAST IdentifierTok a -|-| TypeNameAST int -| ParamAST IdentifierAST IdentifierTok b -|-| IdentifierAST IdentifierTok b -|-| TypeNameAST int -| BinaryAST + -|-| IdentifierAST IdentifierTok a -|-| IdentifierAST IdentifierTok b
Пример парсинг выражения
a:int , b:int , r :: int => a+b
Дерево AST:
LambdaAST recursion: ParamAST IdentifierAST IdentifierTok r -| ParamAST IdentifierAST IdentifierTok a -|-| IdentifierAST IdentifierTok a -|-| TypeNameAST int -| ParamAST IdentifierAST IdentifierTok b -|-| IdentifierAST IdentifierTok b -|-| TypeNameAST int -| ParamAST IdentifierAST IdentifierTok r -|-| IdentifierAST IdentifierTok r -|-| TypeNameAST int -| BinaryAST + -|-| IdentifierAST IdentifierTok a -|-| IdentifierAST IdentifierTok b
Пример парсинг выражения
() => a+b
Дерево AST:
LambdaAST -| BinaryAST + -|-| IdentifierAST IdentifierTok a -|-| IdentifierAST IdentifierTok b
-
class
LiteralAST extends AST
Литерал-символ.
Литерал-символ.
Пример парсинг выражения
123 + 234 * 345
Дерево AST:
BinaryAST + -| LiteralAST IntNumberTok 123 -| BinaryAST * -|-| LiteralAST IntNumberTok 234 -|-| LiteralAST IntNumberTok 345
-
class
OperatorAST extends AST
Оператор-символ.
Оператор-символ. В дереве AST в явном виде отсуствует, входит в состав операторов: UnaryAST, BinaryAST, TernaryAST
-
class
ParamAST extends AST
Параметр лямбды
-
class
ParseError extends Error
Ошибка парсинга
-
class
ParseLocation extends AnyRef
Указание на кусок исходника
- class PojoAST extends AST
- class PojoItemAST extends AST
-
class
PropertyAST extends AST
Ссылка на свойство объекта.
Ссылка на свойство объекта.
Пример парсинг выражения
x.a + x.b.c
Дерево AST:
BinaryAST + -| PropertyAST a -|-| IdentifierAST IdentifierTok x -| PropertyAST c -|-| PropertyAST b -|-|-| IdentifierAST IdentifierTok x
- class ProxyGR extends AstGR
-
class
TernaryAST extends AST
Тренарный оператор
Тренарный оператор
Пример парсинг выражения
a ? b : c
Дерево AST:
TernaryAST ? : -| IdentifierAST IdentifierTok a -| IdentifierAST IdentifierTok b -| IdentifierAST IdentifierTok c
-
class
TypeNameAST extends AST
Имя типа
-
class
UnaryAST extends AST
Унарный оператор
Value Members
-
object
ASTDump
Дамп AST дерева
-
object
ASTPath
Создание пути в дереве
- object LiteralAST
- object ParseError extends Serializable
- object ParseLocation
-
object
Parser
Парсер