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
8namespace Sass {
9
10 class AST2C : public Operation_CRTP<union Sass_Value*, AST2C> {
11
12 public:
13
14 AST2C() { }
15 ~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 { return sass_make_error(msg: "unknown type for C-API"); }
34
35 };
36
37}
38
39#endif
40

source code of gtk/subprojects/libsass/src/ast2c.hpp