virtual bool canElideEmptySequence();
class HNode {
- virtual void anchor();
public:
HNode(Node *n) : _node(n) { }
virtual ~HNode() { }
};
class EmptyHNode : public HNode {
- virtual void anchor();
public:
EmptyHNode(Node *n) : HNode(n) { }
+ virtual ~EmptyHNode() {}
static inline bool classof(const HNode *n) {
return NullNode::classof(n->_node);
}
};
class ScalarHNode : public HNode {
- virtual void anchor();
public:
ScalarHNode(Node *n, StringRef s) : HNode(n), _value(s) { }
+ virtual ~ScalarHNode() { }
StringRef value() const { return _value; }
};
class MapHNode : public HNode {
- virtual void anchor();
public:
MapHNode(Node *n) : HNode(n) { }
virtual ~MapHNode();
};
class SequenceHNode : public HNode {
- virtual void anchor();
public:
SequenceHNode(Node *n) : HNode(n) { }
virtual ~SequenceHNode();