/src/libsass/src/ast2c.hpp
Line | Count | Source |
1 | | #ifndef SASS_AST2C_H |
2 | | #define SASS_AST2C_H |
3 | | |
4 | | #include "ast_fwd_decl.hpp" |
5 | | #include "operation.hpp" |
6 | | #include "sass/values.h" |
7 | | |
8 | | namespace Sass { |
9 | | |
10 | | class AST2C : public Operation_CRTP<union Sass_Value*, AST2C> { |
11 | | |
12 | | public: |
13 | | |
14 | 0 | AST2C() { } |
15 | 0 | ~AST2C() { } |
16 | | |
17 | | union Sass_Value* operator()(Boolean*); |
18 | | union Sass_Value* operator()(Number*); |
19 | | union Sass_Value* operator()(Color_RGBA*); |
20 | | union Sass_Value* operator()(Color_HSLA*); |
21 | | union Sass_Value* operator()(String_Constant*); |
22 | | union Sass_Value* operator()(String_Quoted*); |
23 | | union Sass_Value* operator()(Custom_Warning*); |
24 | | union Sass_Value* operator()(Custom_Error*); |
25 | | union Sass_Value* operator()(List*); |
26 | | union Sass_Value* operator()(Map*); |
27 | | union Sass_Value* operator()(Null*); |
28 | | union Sass_Value* operator()(Arguments*); |
29 | | union Sass_Value* operator()(Argument*); |
30 | | |
31 | | // return sass error if type is not supported |
32 | | union Sass_Value* fallback(AST_Node* x) |
33 | 0 | { return sass_make_error("unknown type for C-API"); } |
34 | | |
35 | | }; |
36 | | |
37 | | } |
38 | | |
39 | | #endif |