Skip to content

Commit 7a29ca8

Browse files
committed
Cleanup and fix selector compare operators
1 parent 7141c01 commit 7a29ca8

File tree

3 files changed

+725
-269
lines changed

3 files changed

+725
-269
lines changed

src/ast.hpp

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -148,12 +148,6 @@ namespace Sass {
148148
VARIABLE,
149149
NUM_TYPES
150150
};
151-
enum Simple_Type {
152-
SIMPLE,
153-
ATTR_SEL,
154-
PSEUDO_SEL,
155-
WRAPPED_SEL,
156-
};
157151
private:
158152
// expressions in some contexts shouldn't be evaluated
159153
ADD_PROPERTY(bool, is_delayed)
@@ -183,7 +177,10 @@ namespace Sass {
183177
static std::string type_name() { return ""; }
184178
virtual bool is_false() { return false; }
185179
// virtual bool is_true() { return !is_false(); }
180+
virtual bool operator< (const Expression& rhs) const { return false; }
186181
virtual bool operator== (const Expression& rhs) const { return false; }
182+
inline bool operator>(const Expression& rhs) const { return rhs < *this; }
183+
inline bool operator!=(const Expression& rhs) const { return !(rhs == *this); }
187184
virtual bool eq(const Expression& rhs) const { return *this == rhs; };
188185
virtual void set_delayed(bool delayed) { is_delayed(delayed); }
189186
virtual bool has_interpolant() const { return is_interpolant(); }
@@ -244,6 +241,7 @@ namespace Sass {
244241
T& operator[](size_t i) { return elements_[i]; }
245242
virtual const T& at(size_t i) const { return elements_.at(i); }
246243
virtual T& at(size_t i) { return elements_.at(i); }
244+
const T& get(size_t i) const { return elements_[i]; }
247245
const T& operator[](size_t i) const { return elements_[i]; }
248246
virtual void append(T element)
249247
{

0 commit comments

Comments
 (0)