Lines Matching defs:ParseNode

67 // ParseNode -------------------------------------------------------------------
70 class ParseNode {
72 ParseNode();
73 virtual ~ParseNode();
107 DISALLOW_COPY_AND_ASSIGN(ParseNode);
135 class AccessorNode : public ParseNode {
154 const ParseNode* index() const { return index_.get(); }
155 void set_index(scoped_ptr<ParseNode> i) { index_ = i.Pass(); }
170 scoped_ptr<ParseNode> index_;
178 class BinaryOpNode : public ParseNode {
194 const ParseNode* left() const { return left_.get(); }
195 void set_left(scoped_ptr<ParseNode> left) {
199 const ParseNode* right() const { return right_.get(); }
200 void set_right(scoped_ptr<ParseNode> right) {
205 scoped_ptr<ParseNode> left_;
207 scoped_ptr<ParseNode> right_;
214 class BlockNode : public ParseNode {
231 const std::vector<ParseNode*>& statements() const { return statements_; }
232 void append_statement(scoped_ptr<ParseNode> s) {
247 std::vector<ParseNode*> statements_;
254 class ConditionNode : public ParseNode {
269 const ParseNode* condition() const { return condition_.get(); }
270 void set_condition(scoped_ptr<ParseNode> c) {
281 const ParseNode* if_false() const { return if_false_.get(); }
282 void set_if_false(scoped_ptr<ParseNode> f) {
290 scoped_ptr<ParseNode> condition_; // Always non-null.
292 scoped_ptr<ParseNode> if_false_; // May be null.
299 class FunctionCallNode : public ParseNode {
331 class IdentifierNode : public ParseNode {
356 class ListNode : public ParseNode {
372 void append_item(scoped_ptr<ParseNode> s) {
375 const std::vector<const ParseNode*>& contents() const { return contents_; }
383 std::vector<const ParseNode*> contents_;
390 class LiteralNode : public ParseNode {
415 class UnaryOpNode : public ParseNode {
431 const ParseNode* operand() const { return operand_.get(); }
432 void set_operand(scoped_ptr<ParseNode> operand) {
438 scoped_ptr<ParseNode> operand_;
450 class BlockCommentNode : public ParseNode {