private ISyntaxNode getModuleNode(TableSyntaxNode node) { ISyntaxNode moduleNode = node; while (moduleNode != null) { if (moduleNode instanceof XlsModuleSyntaxNode) { break; } else { moduleNode = moduleNode.getParent(); } } return moduleNode; }
public IOpenSourceCodeModule getModule() { if (module != null) { return module; } if (parent != null) { return parent.getModule(); } return null; }
public SyntaxNodeException(String message, Throwable cause, ISyntaxNode syntaxNode) { this(message, cause, syntaxNode == null ? null : syntaxNode.getSourceLocation(), syntaxNode == null ? null : syntaxNode.getModule()); this.syntaxNode = syntaxNode; }
private static ISyntaxNode getIdentifierSyntaxNode(ISyntaxNode syntaxNode) { if (!(syntaxNode instanceof IdentifierNode)) { if ("function".equals(syntaxNode.getType())) { syntaxNode = syntaxNode.getChild(syntaxNode.getNumberOfChildren() - 1); } } return syntaxNode; }
private static IBoundNode[] makeLocalVarsFromWhere(ISyntaxNode whereNode, IBindingContext bindingContext) throws Exception { int n = whereNode.getNumberOfChildren(); IBoundNode[] boundNodes = new IBoundNode[n + 1]; for (int i = 0; i < n; i++) { boundNodes[i] = makeLocalVar(whereNode.getChild(i), bindingContext); } return boundNodes; }
public ILocation getLocation() { if (node != null) { ISyntaxNode syntaxNode = node.getSyntaxNode(); if (syntaxNode != null) { return syntaxNode.getSourceLocation(); } } return null; }
@Override public String getStringValue(ISyntaxNode syntaxNode) { return syntaxNode.getType(); } }
private IBoundNode validateNode(ISyntaxNode node, IBindingContext bindingContext) { if (node.getNumberOfChildren() < 1) { return makeErrorNode("New node should have at least one subnode", node, bindingContext); } return null; } }
public SyntaxNodeException(String message, Throwable cause, ISyntaxNode syntaxNode) { this(message, cause, syntaxNode == null ? null : syntaxNode.getSourceLocation(), syntaxNode == null ? null : syntaxNode.getModule()); this.syntaxNode = syntaxNode; }
public IOpenSourceCodeModule getModule() { if (module != null) { return module; } if (parent != null) { return parent.getModule(); } return null; }
private ISyntaxNode getModuleNode(TableSyntaxNode node) { ISyntaxNode moduleNode = node; while (moduleNode != null) { if (moduleNode instanceof XlsModuleSyntaxNode) { break; } else { moduleNode = moduleNode.getParent(); } } return moduleNode; }
public NaryNode(String type, ILocation pos, ISyntaxNode[] nodes, IOpenSourceCodeModule module) { super(type, pos, module); this.nodes = nodes == null ? EMPTY : nodes; for (ISyntaxNode node : this.nodes) { if (node != null) { node.setParent(this); } } }
public IOpenSourceCodeModule getSourceModule() { IOpenSourceCodeModule source = super.getSourceModule(); if (source != null) { return source; } else if (syntaxNode != null) { return syntaxNode.getModule(); } return null; }
public UnaryNode(String type, ILocation pos, ISyntaxNode left, IOpenSourceCodeModule module) { super(type, pos, module); this.left = left; left.setParent(this); }
public IOpenSourceCodeModule getSourceModule() { if (node != null) { ISyntaxNode syntaxNode = node.getSyntaxNode(); if (syntaxNode != null) { return syntaxNode.getModule(); } } return null; }
public NaryNode(String type, ILocation pos, ISyntaxNode[] nodes, IOpenSourceCodeModule module) { super(type, pos, module); this.nodes = nodes == null ? EMPTY : nodes; for (ISyntaxNode node : this.nodes) { if (node != null) { node.setParent(this); } } }
public UnaryNode(String type, ILocation pos, ISyntaxNode left, IOpenSourceCodeModule module) { super(type, pos, module); this.left = left; left.setParent(this); }
public void addNode(ISyntaxNode node) { if (node != null) { node.setParent(this); nodes = ArrayUtils.add(nodes, node); } }