operators.hpp
1.3 KB
#ifndef SASS_OPERATORS_H
#define SASS_OPERATORS_H
#include "values.hpp"
#include "sass/values.h"
namespace Sass {
namespace Operators {
// equality operator using AST Node operator==
bool eq(Expression_Obj, Expression_Obj);
bool neq(Expression_Obj, Expression_Obj);
// specific operators based on cmp and eq
bool lt(Expression_Obj, Expression_Obj);
bool gt(Expression_Obj, Expression_Obj);
bool lte(Expression_Obj, Expression_Obj);
bool gte(Expression_Obj, Expression_Obj);
// arithmetic for all the combinations that matter
Value_Ptr op_strings(Sass::Operand, Value&, Value&, struct Sass_Inspect_Options opt, const ParserState& pstate, bool delayed = false);
Value_Ptr op_colors(enum Sass_OP, const Color&, const Color&, struct Sass_Inspect_Options opt, const ParserState& pstate, bool delayed = false);
Value_Ptr op_numbers(enum Sass_OP, const Number&, const Number&, struct Sass_Inspect_Options opt, const ParserState& pstate, bool delayed = false);
Value_Ptr op_number_color(enum Sass_OP, const Number&, const Color&, struct Sass_Inspect_Options opt, const ParserState& pstate, bool delayed = false);
Value_Ptr op_color_number(enum Sass_OP, const Color&, const Number&, struct Sass_Inspect_Options opt, const ParserState& pstate, bool delayed = false);
};
}
#endif