sassc 0.0.9 → 0.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Rakefile +1 -1
- data/ext/libsass/.gitignore +13 -6
- data/ext/libsass/Makefile +42 -26
- data/ext/libsass/Makefile.am +43 -30
- data/ext/libsass/Readme.md +4 -2
- data/ext/libsass/appveyor.yml +10 -14
- data/ext/libsass/ast.cpp +54 -44
- data/ext/libsass/ast.hpp +404 -236
- data/ext/libsass/ast_def_macros.hpp +5 -0
- data/ext/libsass/ast_factory.hpp +6 -3
- data/ext/libsass/ast_fwd_decl.hpp +12 -0
- data/ext/libsass/b64/encode.h +2 -2
- data/ext/libsass/backtrace.hpp +13 -17
- data/ext/libsass/base64vlq.hpp +4 -1
- data/ext/libsass/bind.cpp +12 -15
- data/ext/libsass/bind.hpp +6 -6
- data/ext/libsass/color_names.hpp +4 -1
- data/ext/libsass/configure.ac +7 -21
- data/ext/libsass/constants.cpp +6 -4
- data/ext/libsass/constants.hpp +10 -4
- data/ext/libsass/context.cpp +89 -58
- data/ext/libsass/context.hpp +28 -35
- data/ext/libsass/contextualize.cpp +20 -10
- data/ext/libsass/contextualize.hpp +8 -23
- data/ext/libsass/contrib/libsass.spec +66 -0
- data/ext/libsass/cssize.cpp +547 -0
- data/ext/libsass/cssize.hpp +82 -0
- data/ext/libsass/debug.hpp +3 -3
- data/ext/libsass/debugger.hpp +358 -0
- data/ext/libsass/emitter.cpp +255 -0
- data/ext/libsass/emitter.hpp +83 -0
- data/ext/libsass/environment.hpp +7 -3
- data/ext/libsass/error_handling.cpp +11 -14
- data/ext/libsass/error_handling.hpp +9 -7
- data/ext/libsass/eval.cpp +253 -161
- data/ext/libsass/eval.hpp +13 -13
- data/ext/libsass/expand.cpp +135 -64
- data/ext/libsass/expand.hpp +11 -13
- data/ext/libsass/extend.cpp +66 -20
- data/ext/libsass/extend.hpp +6 -11
- data/ext/libsass/file.cpp +31 -26
- data/ext/libsass/file.hpp +6 -1
- data/ext/libsass/functions.cpp +270 -287
- data/ext/libsass/functions.hpp +8 -11
- data/ext/libsass/inspect.cpp +385 -255
- data/ext/libsass/inspect.hpp +15 -26
- data/ext/libsass/kwd_arg_macros.hpp +5 -0
- data/ext/libsass/mapping.hpp +4 -3
- data/ext/libsass/memory_manager.hpp +5 -2
- data/ext/libsass/node.cpp +50 -50
- data/ext/libsass/node.hpp +26 -27
- data/ext/libsass/operation.hpp +15 -4
- data/ext/libsass/output.cpp +401 -0
- data/ext/libsass/output.hpp +56 -0
- data/ext/libsass/parser.cpp +573 -399
- data/ext/libsass/parser.hpp +122 -88
- data/ext/libsass/paths.hpp +7 -2
- data/ext/libsass/plugins.cpp +155 -0
- data/ext/libsass/plugins.hpp +56 -0
- data/ext/libsass/position.cpp +128 -0
- data/ext/libsass/position.hpp +108 -11
- data/ext/libsass/prelexer.cpp +184 -110
- data/ext/libsass/prelexer.hpp +131 -24
- data/ext/libsass/remove_placeholders.cpp +1 -1
- data/ext/libsass/remove_placeholders.hpp +6 -6
- data/ext/libsass/sass.cpp +3 -3
- data/ext/libsass/sass.h +12 -4
- data/ext/libsass/sass2scss.cpp +3 -2
- data/ext/libsass/sass2scss.h +5 -0
- data/ext/libsass/sass_context.cpp +136 -37
- data/ext/libsass/sass_context.h +19 -10
- data/ext/libsass/sass_functions.cpp +29 -2
- data/ext/libsass/sass_functions.h +8 -2
- data/ext/libsass/sass_interface.cpp +32 -23
- data/ext/libsass/sass_interface.h +9 -4
- data/ext/libsass/sass_util.cpp +19 -23
- data/ext/libsass/sass_util.hpp +28 -27
- data/ext/libsass/sass_values.cpp +6 -4
- data/ext/libsass/sass_values.h +3 -3
- data/ext/libsass/script/ci-build-libsass +13 -1
- data/ext/libsass/script/ci-report-coverage +2 -1
- data/ext/libsass/source_map.cpp +79 -28
- data/ext/libsass/source_map.hpp +35 -16
- data/ext/libsass/subset_map.hpp +6 -4
- data/ext/libsass/to_c.hpp +4 -4
- data/ext/libsass/to_string.cpp +13 -8
- data/ext/libsass/to_string.hpp +6 -4
- data/ext/libsass/units.cpp +2 -1
- data/ext/libsass/units.hpp +6 -1
- data/ext/libsass/utf8_string.cpp +0 -5
- data/ext/libsass/utf8_string.hpp +3 -2
- data/ext/libsass/util.cpp +461 -49
- data/ext/libsass/util.hpp +34 -13
- data/ext/libsass/version.sh +10 -0
- data/ext/libsass/win/libsass.filters +20 -11
- data/ext/libsass/win/libsass.vcxproj +11 -8
- data/lib/sassc/importer.rb +1 -8
- data/lib/sassc/native.rb +7 -0
- data/lib/sassc/native/native_context_api.rb +5 -5
- data/lib/sassc/version.rb +1 -1
- data/test/native_test.rb +1 -1
- metadata +14 -10
- data/ext/libsass/copy_c_str.cpp +0 -13
- data/ext/libsass/copy_c_str.hpp +0 -5
- data/ext/libsass/output_compressed.cpp +0 -401
- data/ext/libsass/output_compressed.hpp +0 -95
- data/ext/libsass/output_nested.cpp +0 -364
- data/ext/libsass/output_nested.hpp +0 -108
- data/ext/libsass/test-driver +0 -127
- data/ext/libsass/token.hpp +0 -32
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
#ifndef SASS_AST_DEF_MACROS_H
|
|
2
|
+
#define SASS_AST_DEF_MACROS_H
|
|
3
|
+
|
|
1
4
|
#define ATTACH_OPERATIONS()\
|
|
2
5
|
virtual void perform(Operation<void>* op) { (*op)(this); }\
|
|
3
6
|
virtual AST_Node* perform(Operation<AST_Node*>* op) { return (*op)(this); }\
|
|
@@ -14,3 +17,5 @@ public:\
|
|
|
14
17
|
type name() const { return name##_; }\
|
|
15
18
|
type name(type name##__) { return name##_ = name##__; }\
|
|
16
19
|
private:
|
|
20
|
+
|
|
21
|
+
#endif
|
data/ext/libsass/ast_factory.hpp
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
#
|
|
1
|
+
#ifndef SASS_AST_FACTORY_H
|
|
2
|
+
#define SASS_AST_FACTORY_H
|
|
2
3
|
|
|
3
4
|
#include <vector>
|
|
4
5
|
|
|
5
|
-
#ifndef SASS_AST
|
|
6
6
|
#include "ast.hpp"
|
|
7
|
-
#endif
|
|
8
7
|
|
|
9
8
|
namespace Sass {
|
|
10
9
|
using namespace std;
|
|
@@ -18,7 +17,9 @@ namespace Sass {
|
|
|
18
17
|
Propset* new_Propset(string p, size_t l, String* pf, Block* b);
|
|
19
18
|
Feature_Query* new_Feature_Query(string p, size_t l, Feature_Query* f, Block* b);
|
|
20
19
|
Media_Query* new_Media_Query(string p, size_t l, List* q, Block* b);
|
|
20
|
+
At_Root_Block* new_At_Root_Block(string p, size_t l, Selector* sel, Block* b);
|
|
21
21
|
At_Rule* new_At_Rule(string p, size_t l, string kwd, Selector* sel, Block* b);
|
|
22
|
+
Keyframe_Rule* new_Keyframe_Rule(string p, size_t l, Block* b);
|
|
22
23
|
Declaration* new_Declaration(string p, size_t l, String* prop, List* vals);
|
|
23
24
|
Assignment* new_Assignment(string p, size_t l, string var, Expression* val, bool guarded = false);
|
|
24
25
|
Import<Function_Call*>* new_CSS_Import(string p, size_t l, Function_Call* loc);
|
|
@@ -85,3 +86,5 @@ namespace Sass {
|
|
|
85
86
|
Selector_List* new_Selector_List(string p, size_t l, size_t s = 0);
|
|
86
87
|
};
|
|
87
88
|
}
|
|
89
|
+
|
|
90
|
+
#endif
|
|
@@ -1,17 +1,25 @@
|
|
|
1
|
+
#ifndef SASS_AST_FWD_DECL_H
|
|
2
|
+
#define SASS_AST_FWD_DECL_H
|
|
3
|
+
|
|
1
4
|
/////////////////////////////////////////////
|
|
2
5
|
// Forward declarations for the AST visitors.
|
|
3
6
|
/////////////////////////////////////////////
|
|
4
7
|
namespace Sass {
|
|
5
8
|
|
|
9
|
+
enum Output_Style { NESTED, EXPANDED, COMPACT, COMPRESSED, FORMATTED };
|
|
10
|
+
|
|
6
11
|
class AST_Node;
|
|
7
12
|
// statements
|
|
8
13
|
class Statement;
|
|
9
14
|
class Block;
|
|
10
15
|
class Ruleset;
|
|
11
16
|
class Propset;
|
|
17
|
+
class Bubble;
|
|
12
18
|
class Media_Block;
|
|
13
19
|
class Feature_Block;
|
|
14
20
|
class At_Rule;
|
|
21
|
+
class Keyframe_Rule;
|
|
22
|
+
class At_Root_Block;
|
|
15
23
|
class Declaration;
|
|
16
24
|
class Assignment;
|
|
17
25
|
class Import;
|
|
@@ -45,10 +53,12 @@ namespace Sass {
|
|
|
45
53
|
class String_Schema;
|
|
46
54
|
class String;
|
|
47
55
|
class String_Constant;
|
|
56
|
+
class String_Quoted;
|
|
48
57
|
class Media_Query;
|
|
49
58
|
class Media_Query_Expression;
|
|
50
59
|
class Feature_Query;
|
|
51
60
|
class Feature_Query_Condition;
|
|
61
|
+
class At_Root_Expression;
|
|
52
62
|
class Null;
|
|
53
63
|
// parameters and arguments
|
|
54
64
|
class Parameter;
|
|
@@ -70,3 +80,5 @@ namespace Sass {
|
|
|
70
80
|
class Selector_List;
|
|
71
81
|
|
|
72
82
|
}
|
|
83
|
+
|
|
84
|
+
#endif
|
data/ext/libsass/b64/encode.h
CHANGED
|
@@ -12,7 +12,7 @@ For details, see http://sourceforge.net/projects/libb64
|
|
|
12
12
|
|
|
13
13
|
namespace base64
|
|
14
14
|
{
|
|
15
|
-
extern "C"
|
|
15
|
+
extern "C"
|
|
16
16
|
{
|
|
17
17
|
#include "cencode.h"
|
|
18
18
|
}
|
|
@@ -54,7 +54,7 @@ namespace base64
|
|
|
54
54
|
do
|
|
55
55
|
{
|
|
56
56
|
istream_in.read(plaintext, N);
|
|
57
|
-
plainlength = istream_in.gcount();
|
|
57
|
+
plainlength = static_cast<int>(istream_in.gcount());
|
|
58
58
|
//
|
|
59
59
|
codelength = encode(plaintext, plainlength, code);
|
|
60
60
|
ostream_in.write(code, codelength);
|
data/ext/libsass/backtrace.hpp
CHANGED
|
@@ -1,14 +1,10 @@
|
|
|
1
|
-
#
|
|
1
|
+
#ifndef SASS_BACKTRACE_H
|
|
2
|
+
#define SASS_BACKTRACE_H
|
|
2
3
|
|
|
3
4
|
#include <sstream>
|
|
4
5
|
|
|
5
|
-
#ifndef SASS_POSITION
|
|
6
|
-
#include "position.hpp"
|
|
7
|
-
#endif
|
|
8
|
-
|
|
9
|
-
#ifndef SASS_FILE
|
|
10
6
|
#include "file.hpp"
|
|
11
|
-
#
|
|
7
|
+
#include "position.hpp"
|
|
12
8
|
|
|
13
9
|
namespace Sass {
|
|
14
10
|
|
|
@@ -16,15 +12,13 @@ namespace Sass {
|
|
|
16
12
|
|
|
17
13
|
struct Backtrace {
|
|
18
14
|
|
|
19
|
-
Backtrace*
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
string caller;
|
|
15
|
+
Backtrace* parent;
|
|
16
|
+
ParserState pstate;
|
|
17
|
+
string caller;
|
|
23
18
|
|
|
24
|
-
Backtrace(Backtrace* prn,
|
|
19
|
+
Backtrace(Backtrace* prn, ParserState pstate, string c)
|
|
25
20
|
: parent(prn),
|
|
26
|
-
|
|
27
|
-
position(position),
|
|
21
|
+
pstate(pstate),
|
|
28
22
|
caller(c)
|
|
29
23
|
{ }
|
|
30
24
|
|
|
@@ -40,14 +34,14 @@ namespace Sass {
|
|
|
40
34
|
while (this_point->parent) {
|
|
41
35
|
|
|
42
36
|
// make path relative to the current directory
|
|
43
|
-
string rel_path(Sass::File::resolve_relative_path(this_point->path, cwd, cwd));
|
|
37
|
+
string rel_path(Sass::File::resolve_relative_path(this_point->pstate.path, cwd, cwd));
|
|
44
38
|
|
|
45
39
|
if (warning) {
|
|
46
40
|
ss << endl
|
|
47
41
|
<< "\t"
|
|
48
42
|
<< (++i == 0 ? "on" : "from")
|
|
49
43
|
<< " line "
|
|
50
|
-
<< this_point->
|
|
44
|
+
<< this_point->pstate.line
|
|
51
45
|
<< " of "
|
|
52
46
|
<< rel_path;
|
|
53
47
|
} else {
|
|
@@ -55,7 +49,7 @@ namespace Sass {
|
|
|
55
49
|
<< "\t"
|
|
56
50
|
<< rel_path
|
|
57
51
|
<< ":"
|
|
58
|
-
<< this_point->
|
|
52
|
+
<< this_point->pstate.line
|
|
59
53
|
<< this_point->parent->caller;
|
|
60
54
|
}
|
|
61
55
|
|
|
@@ -79,3 +73,5 @@ namespace Sass {
|
|
|
79
73
|
};
|
|
80
74
|
|
|
81
75
|
}
|
|
76
|
+
|
|
77
|
+
#endif
|
data/ext/libsass/base64vlq.hpp
CHANGED
data/ext/libsass/bind.cpp
CHANGED
|
@@ -32,7 +32,7 @@ namespace Sass {
|
|
|
32
32
|
stringstream msg;
|
|
33
33
|
msg << callee << " only takes " << LP << " arguments; "
|
|
34
34
|
<< "given " << LA;
|
|
35
|
-
error(msg.str(), as->
|
|
35
|
+
error(msg.str(), as->pstate());
|
|
36
36
|
}
|
|
37
37
|
Parameter* p = (*ps)[ip];
|
|
38
38
|
Argument* a = (*as)[ia];
|
|
@@ -51,16 +51,14 @@ namespace Sass {
|
|
|
51
51
|
} else {
|
|
52
52
|
|
|
53
53
|
// copy all remaining arguments into the rest parameter, preserving names
|
|
54
|
-
List* arglist = new (ctx.mem) List(p->
|
|
55
|
-
p->position(),
|
|
54
|
+
List* arglist = new (ctx.mem) List(p->pstate(),
|
|
56
55
|
0,
|
|
57
56
|
List::COMMA,
|
|
58
57
|
true);
|
|
59
58
|
env->current_frame()[p->name()] = arglist;
|
|
60
59
|
while (ia < LA) {
|
|
61
60
|
a = (*as)[ia];
|
|
62
|
-
(*arglist) << new (ctx.mem) Argument(a->
|
|
63
|
-
a->position(),
|
|
61
|
+
(*arglist) << new (ctx.mem) Argument(a->pstate(),
|
|
64
62
|
a->value(),
|
|
65
63
|
a->name(),
|
|
66
64
|
false);
|
|
@@ -84,7 +82,7 @@ namespace Sass {
|
|
|
84
82
|
a = static_cast<Argument*>((*arglist)[0]);
|
|
85
83
|
} else {
|
|
86
84
|
Expression* a_to_convert = (*arglist)[0];
|
|
87
|
-
a = new (ctx.mem) Argument(a_to_convert->
|
|
85
|
+
a = new (ctx.mem) Argument(a_to_convert->pstate(), a_to_convert, "", false);
|
|
88
86
|
}
|
|
89
87
|
arglist->elements().erase(arglist->elements().begin());
|
|
90
88
|
if (!arglist->length() || (!arglist->is_arglist() && ip + 1 == LP)) {
|
|
@@ -99,7 +97,7 @@ namespace Sass {
|
|
|
99
97
|
if (!param_map.count(name)) {
|
|
100
98
|
stringstream msg;
|
|
101
99
|
msg << callee << " has no parameter named " << name;
|
|
102
|
-
error(msg.str(), a->
|
|
100
|
+
error(msg.str(), a->pstate());
|
|
103
101
|
}
|
|
104
102
|
env->current_frame()[name] = argmap->at(key);
|
|
105
103
|
}
|
|
@@ -114,7 +112,7 @@ namespace Sass {
|
|
|
114
112
|
stringstream msg;
|
|
115
113
|
msg << "parameter " << p->name()
|
|
116
114
|
<< " provided more than once in call to " << callee;
|
|
117
|
-
error(msg.str(), a->
|
|
115
|
+
error(msg.str(), a->pstate());
|
|
118
116
|
}
|
|
119
117
|
// ordinal arg -- bind it to the next param
|
|
120
118
|
env->current_frame()[p->name()] = a->value();
|
|
@@ -125,19 +123,19 @@ namespace Sass {
|
|
|
125
123
|
if (!param_map.count(a->name())) {
|
|
126
124
|
stringstream msg;
|
|
127
125
|
msg << callee << " has no parameter named " << a->name();
|
|
128
|
-
error(msg.str(), a->
|
|
126
|
+
error(msg.str(), a->pstate());
|
|
129
127
|
}
|
|
130
128
|
if (param_map[a->name()]->is_rest_parameter()) {
|
|
131
129
|
stringstream msg;
|
|
132
130
|
msg << "argument " << a->name() << " of " << callee
|
|
133
131
|
<< "cannot be used as named argument";
|
|
134
|
-
error(msg.str(), a->
|
|
132
|
+
error(msg.str(), a->pstate());
|
|
135
133
|
}
|
|
136
134
|
if (env->current_frame_has(a->name())) {
|
|
137
135
|
stringstream msg;
|
|
138
136
|
msg << "parameter " << p->name()
|
|
139
137
|
<< "provided more than once in call to " << callee;
|
|
140
|
-
error(msg.str(), a->
|
|
138
|
+
error(msg.str(), a->pstate());
|
|
141
139
|
}
|
|
142
140
|
env->current_frame()[a->name()] = a->value();
|
|
143
141
|
}
|
|
@@ -147,15 +145,14 @@ namespace Sass {
|
|
|
147
145
|
// That's only okay if they have default values, or were already bound by
|
|
148
146
|
// named arguments, or if it's a single rest-param.
|
|
149
147
|
for (size_t i = ip; i < LP; ++i) {
|
|
150
|
-
To_String to_string;
|
|
148
|
+
To_String to_string(&ctx);
|
|
151
149
|
Parameter* leftover = (*ps)[i];
|
|
152
150
|
// cerr << "env for default params:" << endl;
|
|
153
151
|
// env->print();
|
|
154
152
|
// cerr << "********" << endl;
|
|
155
153
|
if (!env->current_frame_has(leftover->name())) {
|
|
156
154
|
if (leftover->is_rest_parameter()) {
|
|
157
|
-
env->current_frame()[leftover->name()] = new (ctx.mem) List(leftover->
|
|
158
|
-
leftover->position(),
|
|
155
|
+
env->current_frame()[leftover->name()] = new (ctx.mem) List(leftover->pstate(),
|
|
159
156
|
0,
|
|
160
157
|
List::COMMA,
|
|
161
158
|
true);
|
|
@@ -175,7 +172,7 @@ namespace Sass {
|
|
|
175
172
|
stringstream msg;
|
|
176
173
|
msg << "required parameter " << leftover->name()
|
|
177
174
|
<< " is missing in call to " << callee;
|
|
178
|
-
error(msg.str(), as->
|
|
175
|
+
error(msg.str(), as->pstate());
|
|
179
176
|
}
|
|
180
177
|
}
|
|
181
178
|
}
|
data/ext/libsass/bind.hpp
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
#ifndef SASS_ENVIRONMENT
|
|
4
|
-
#include "environment.hpp"
|
|
5
|
-
#endif
|
|
1
|
+
#ifndef SASS_BIND_H
|
|
2
|
+
#define SASS_BIND_H
|
|
6
3
|
|
|
7
4
|
#include <string>
|
|
5
|
+
#include "environment.hpp"
|
|
8
6
|
|
|
9
7
|
namespace Sass {
|
|
10
8
|
class AST_Node;
|
|
11
9
|
class Parameters;
|
|
12
10
|
class Arguments;
|
|
13
|
-
|
|
11
|
+
class Context;
|
|
14
12
|
class Eval;
|
|
15
13
|
typedef Environment<AST_Node*> Env;
|
|
16
14
|
|
|
17
15
|
void bind(string caller, Parameters*, Arguments*, Context&, Env*, Eval*);
|
|
18
16
|
}
|
|
17
|
+
|
|
18
|
+
#endif
|
data/ext/libsass/color_names.hpp
CHANGED
data/ext/libsass/configure.ac
CHANGED
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
# Process this file with autoconf to produce a configure script.
|
|
3
3
|
|
|
4
4
|
AC_PREREQ([2.61])
|
|
5
|
-
|
|
5
|
+
|
|
6
|
+
AC_INIT([libsass], m4_esyscmd_s([./version.sh]), [support@moovweb.com])
|
|
6
7
|
AC_CONFIG_SRCDIR([ast.hpp])
|
|
7
8
|
AC_CONFIG_MACRO_DIR([m4])
|
|
8
9
|
AC_CONFIG_HEADERS([config.h])
|
|
@@ -62,7 +63,7 @@ the --with-sass-spec-dir=<dir> argument.
|
|
|
62
63
|
# Automake doesn't like its tests in an absolute path, so we make it relative.
|
|
63
64
|
case $sass_spec_dir in
|
|
64
65
|
/*)
|
|
65
|
-
SASS_SPEC_PATH=`$RUBY -e "require 'pathname';puts Pathname.new('$sass_spec_dir').relative_path_from(Pathname.new('$PWD')).to_s"`
|
|
66
|
+
SASS_SPEC_PATH=`$RUBY -e "require 'pathname'; puts Pathname.new('$sass_spec_dir').relative_path_from(Pathname.new('$PWD')).to_s"`
|
|
66
67
|
;;
|
|
67
68
|
*)
|
|
68
69
|
SASS_SPEC_PATH="$sass_spec_dir"
|
|
@@ -106,25 +107,10 @@ fi
|
|
|
106
107
|
|
|
107
108
|
AM_CONDITIONAL(ENABLE_COVERAGE, test "x$enable_cov" = "xyes")
|
|
108
109
|
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
LIBSASS_VERSION=$VERSION
|
|
114
|
-
else
|
|
115
|
-
AC_CHECK_FILE(.git/config, [
|
|
116
|
-
LIBSASS_VERSION=`$GIT describe --abbrev=4 --dirty --always --tags`
|
|
117
|
-
], [
|
|
118
|
-
LIBSASS_VERSION=$VERSION
|
|
119
|
-
])
|
|
120
|
-
fi
|
|
121
|
-
if test "x$LIBSASS_VERSION" = "x"; then
|
|
122
|
-
AC_MSG_ERROR([LIBSASS_VERSION not defined.
|
|
123
|
-
You can solve this by setting LIBSASS_VERSION:
|
|
124
|
-
# export LIBSASS_VERSION="x.y.z"
|
|
125
|
-
])
|
|
126
|
-
fi
|
|
127
|
-
fi
|
|
110
|
+
AS_CASE([$host], [*-*-mingw32], [is_mingw32=yes], [is_mingw32=no])
|
|
111
|
+
AM_CONDITIONAL(COMPILER_IS_MINGW32, test "x$is_mingw32" = "xyes")
|
|
112
|
+
|
|
113
|
+
AC_MSG_NOTICE([Building libsass ($VERSION)])
|
|
128
114
|
|
|
129
115
|
AC_CONFIG_FILES([Makefile support/libsass.pc])
|
|
130
116
|
AC_OUTPUT
|
data/ext/libsass/constants.cpp
CHANGED
|
@@ -4,10 +4,8 @@ namespace Sass {
|
|
|
4
4
|
namespace Constants {
|
|
5
5
|
extern const int SPECIFICITY_BASE = 1000;
|
|
6
6
|
|
|
7
|
-
// hidden variable name for the image path (for the image-url built-in)
|
|
8
|
-
extern const char image_path_var[] = "$[image path]";
|
|
9
|
-
|
|
10
7
|
// sass keywords
|
|
8
|
+
extern const char at_root_kwd[] = "@at-root";
|
|
11
9
|
extern const char import_kwd[] = "@import";
|
|
12
10
|
extern const char mixin_kwd[] = "@mixin";
|
|
13
11
|
extern const char function_kwd[] = "@function";
|
|
@@ -32,6 +30,10 @@ namespace Sass {
|
|
|
32
30
|
extern const char global_kwd[] = "global";
|
|
33
31
|
extern const char null_kwd[] = "null";
|
|
34
32
|
extern const char optional_kwd[] = "optional";
|
|
33
|
+
extern const char with_kwd[] = "with";
|
|
34
|
+
extern const char without_kwd[] = "without";
|
|
35
|
+
extern const char all_kwd[] = "all";
|
|
36
|
+
extern const char rule_kwd[] = "rule";
|
|
35
37
|
|
|
36
38
|
// css standard units
|
|
37
39
|
extern const char em_kwd[] = "em";
|
|
@@ -65,7 +67,6 @@ namespace Sass {
|
|
|
65
67
|
extern const char only_kwd[] = "only";
|
|
66
68
|
extern const char rgb_kwd[] = "rgb(";
|
|
67
69
|
extern const char url_kwd[] = "url(";
|
|
68
|
-
extern const char image_url_kwd[] = "image-url(";
|
|
69
70
|
extern const char important_kwd[] = "important";
|
|
70
71
|
extern const char pseudo_not_kwd[] = ":not(";
|
|
71
72
|
extern const char even_kwd[] = "even";
|
|
@@ -75,6 +76,7 @@ namespace Sass {
|
|
|
75
76
|
extern const char calc_kwd[] = "calc(";
|
|
76
77
|
extern const char moz_calc_kwd[] = "-moz-calc(";
|
|
77
78
|
extern const char webkit_calc_kwd[] = "-webkit-calc(";
|
|
79
|
+
extern const char ms_calc_kwd[] = "-ms-calc(";
|
|
78
80
|
|
|
79
81
|
// css attribute-matching operators
|
|
80
82
|
extern const char tilde_equal[] = "~=";
|
data/ext/libsass/constants.hpp
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
#
|
|
1
|
+
#ifndef SASS_CONSTANTS_H
|
|
2
|
+
#define SASS_CONSTANTS_H
|
|
2
3
|
|
|
3
4
|
namespace Sass {
|
|
4
5
|
namespace Constants {
|
|
5
6
|
extern const int SPECIFICITY_BASE;
|
|
6
7
|
|
|
7
|
-
// hidden variable name for the image path (for the image-url built-in)
|
|
8
|
-
extern const char image_path_var[];
|
|
9
|
-
|
|
10
8
|
// sass keywords
|
|
9
|
+
extern const char at_root_kwd[];
|
|
11
10
|
extern const char import_kwd[];
|
|
12
11
|
extern const char mixin_kwd[];
|
|
13
12
|
extern const char function_kwd[];
|
|
@@ -32,6 +31,10 @@ namespace Sass {
|
|
|
32
31
|
extern const char global_kwd[];
|
|
33
32
|
extern const char null_kwd[];
|
|
34
33
|
extern const char optional_kwd[];
|
|
34
|
+
extern const char with_kwd[];
|
|
35
|
+
extern const char without_kwd[];
|
|
36
|
+
extern const char all_kwd[];
|
|
37
|
+
extern const char rule_kwd[];
|
|
35
38
|
|
|
36
39
|
// css standard units
|
|
37
40
|
extern const char em_kwd[];
|
|
@@ -75,6 +78,7 @@ namespace Sass {
|
|
|
75
78
|
extern const char calc_kwd[];
|
|
76
79
|
extern const char moz_calc_kwd[];
|
|
77
80
|
extern const char webkit_calc_kwd[];
|
|
81
|
+
extern const char ms_calc_kwd[];
|
|
78
82
|
|
|
79
83
|
// css attribute-matching operators
|
|
80
84
|
extern const char tilde_equal[];
|
|
@@ -143,3 +147,5 @@ namespace Sass {
|
|
|
143
147
|
|
|
144
148
|
}
|
|
145
149
|
}
|
|
150
|
+
|
|
151
|
+
#endif
|