# ASTNode 类

AST 节点类。建议使用其中一个 createNode 方法而不是直接创建节点。

签名:

export declare class ASTNode

# 构造器

构造器 修饰符 描述
(constructor)(type, location, opt_params) 构造 ASTNode 类的新实例

# 属性

属性 修饰符 类型 描述
NAVIGATE_ALL_FIELDS static boolean True 值用于导航到所有字段。False 值仅用于导航到可点击字段。

# 方法

方法 修饰符 描述
createBlockNode(block) static 创建指向块的 AST 节点
createConnectionNode(connection) static 创建指向连接的 AST 节点。如果连接有一个父输入,则创建一个类型为输入的 AST 节点,该节点将包含该连接。
createFieldNode(field) static 创建指向字段的 AST 节点
createInputNode(input) static 创建指向输入的 AST 节点。将输入连接存储为位置。
createStackNode(topBlock) static 创建类型为栈的 AST 节点。栈由其顶部块表示,是连接到顶部块的所有块的集合,包括顶部块。
createTopNode(block) static 为块的顶部位置创建 AST 节点。这是输出连接、前一个连接或块。
createWorkspaceNode(workspace, wsCoordinate) static 指向工作区的 AST 节点。
getLocation() 获取此节点指向的值。调用者有责任检查节点类型以确定他们从这个调用返回的对象是什么类型。
getSourceBlock() 查找此节点位置的源块。
getType() 当前位置的类型。ASTNode.types 之一。
getWsCoordinate() 工作区上的坐标。
in() 查找当前位置下一级并向左到最左边的元素。
next() 查找 AST 中当前元素右侧的元素。
out() 查找当前位置上方一级并向左到最左边的下一个元素。
prev() 查找 AST 中当前元素左侧的元素。