sassc 2.0.1 → 2.1.0.pre1
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/.gitignore +1 -0
- data/.gitmodules +1 -1
- data/.travis.yml +7 -3
- data/CHANGELOG.md +3 -0
- data/CODE_OF_CONDUCT.md +1 -1
- data/README.md +1 -1
- data/Rakefile +23 -8
- data/ext/extconf.rb +39 -0
- data/ext/libsass/.gitignore +1 -0
- data/ext/libsass/GNUmakefile.am +23 -39
- data/ext/libsass/Makefile +56 -91
- data/ext/libsass/Makefile.conf +16 -2
- data/ext/libsass/configure.ac +8 -12
- data/ext/libsass/include/sass/base.h +1 -0
- data/ext/libsass/include/sass/context.h +1 -1
- data/ext/libsass/src/GNUmakefile.am +1 -5
- data/ext/libsass/src/ast.cpp +747 -2010
- data/ext/libsass/src/ast.hpp +239 -2383
- data/ext/libsass/src/{to_c.cpp → ast2c.cpp} +22 -16
- data/ext/libsass/src/ast2c.hpp +39 -0
- data/ext/libsass/src/ast_def_macros.hpp +62 -10
- data/ext/libsass/src/ast_fwd_decl.cpp +1 -0
- data/ext/libsass/src/ast_fwd_decl.hpp +43 -165
- data/ext/libsass/src/ast_sel_cmp.cpp +909 -0
- data/ext/libsass/src/ast_sel_unify.cpp +280 -0
- data/ext/libsass/src/ast_selectors.cpp +1475 -0
- data/ext/libsass/src/ast_selectors.hpp +568 -0
- data/ext/libsass/src/ast_supports.cpp +130 -0
- data/ext/libsass/src/ast_supports.hpp +121 -0
- data/ext/libsass/src/ast_values.cpp +967 -0
- data/ext/libsass/src/ast_values.hpp +489 -0
- data/ext/libsass/src/backtrace.cpp +4 -0
- data/ext/libsass/src/base64vlq.cpp +3 -0
- data/ext/libsass/src/bind.cpp +18 -17
- data/ext/libsass/src/bind.hpp +3 -1
- data/ext/libsass/src/c2ast.cpp +64 -0
- data/ext/libsass/src/c2ast.hpp +14 -0
- data/ext/libsass/src/cencode.c +2 -2
- data/ext/libsass/src/check_nesting.cpp +52 -56
- data/ext/libsass/src/check_nesting.hpp +35 -34
- data/ext/libsass/src/color_maps.cpp +156 -153
- data/ext/libsass/src/color_maps.hpp +152 -152
- data/ext/libsass/src/constants.cpp +15 -0
- data/ext/libsass/src/constants.hpp +13 -0
- data/ext/libsass/src/context.cpp +24 -14
- data/ext/libsass/src/context.hpp +6 -6
- data/ext/libsass/src/cssize.cpp +69 -71
- data/ext/libsass/src/cssize.hpp +50 -50
- data/ext/libsass/src/debugger.hpp +117 -110
- data/ext/libsass/src/emitter.cpp +13 -12
- data/ext/libsass/src/emitter.hpp +13 -9
- data/ext/libsass/src/environment.cpp +15 -1
- data/ext/libsass/src/environment.hpp +6 -0
- data/ext/libsass/src/error_handling.cpp +36 -59
- data/ext/libsass/src/error_handling.hpp +29 -16
- data/ext/libsass/src/eval.cpp +302 -323
- data/ext/libsass/src/eval.hpp +64 -55
- data/ext/libsass/src/expand.cpp +94 -88
- data/ext/libsass/src/expand.hpp +33 -37
- data/ext/libsass/src/extend.cpp +38 -36
- data/ext/libsass/src/extend.hpp +15 -15
- data/ext/libsass/src/file.cpp +34 -2
- data/ext/libsass/src/fn_colors.cpp +594 -0
- data/ext/libsass/src/fn_colors.hpp +85 -0
- data/ext/libsass/src/fn_lists.cpp +284 -0
- data/ext/libsass/src/fn_lists.hpp +34 -0
- data/ext/libsass/src/fn_maps.cpp +94 -0
- data/ext/libsass/src/fn_maps.hpp +30 -0
- data/ext/libsass/src/fn_miscs.cpp +256 -0
- data/ext/libsass/src/fn_miscs.hpp +40 -0
- data/ext/libsass/src/fn_numbers.cpp +220 -0
- data/ext/libsass/src/fn_numbers.hpp +45 -0
- data/ext/libsass/src/fn_selectors.cpp +235 -0
- data/ext/libsass/src/fn_selectors.hpp +35 -0
- data/ext/libsass/src/fn_strings.cpp +254 -0
- data/ext/libsass/src/fn_strings.hpp +34 -0
- data/ext/libsass/src/fn_utils.cpp +156 -0
- data/ext/libsass/src/fn_utils.hpp +56 -0
- data/ext/libsass/src/inspect.cpp +101 -152
- data/ext/libsass/src/inspect.hpp +69 -73
- data/ext/libsass/src/json.cpp +2 -2
- data/ext/libsass/src/lexer.cpp +6 -3
- data/ext/libsass/src/listize.cpp +9 -11
- data/ext/libsass/src/listize.hpp +11 -7
- data/ext/libsass/src/memory/SharedPtr.cpp +2 -83
- data/ext/libsass/src/memory/SharedPtr.hpp +127 -143
- data/ext/libsass/src/node.cpp +13 -10
- data/ext/libsass/src/node.hpp +3 -3
- data/ext/libsass/src/operation.hpp +184 -144
- data/ext/libsass/src/operators.cpp +43 -17
- data/ext/libsass/src/operators.hpp +5 -5
- data/ext/libsass/src/output.cpp +21 -18
- data/ext/libsass/src/output.hpp +14 -21
- data/ext/libsass/src/parser.cpp +215 -183
- data/ext/libsass/src/parser.hpp +28 -24
- data/ext/libsass/src/plugins.cpp +5 -1
- data/ext/libsass/src/position.cpp +3 -0
- data/ext/libsass/src/prelexer.cpp +9 -3
- data/ext/libsass/src/prelexer.hpp +9 -9
- data/ext/libsass/src/remove_placeholders.cpp +14 -11
- data/ext/libsass/src/remove_placeholders.hpp +8 -9
- data/ext/libsass/src/sass.cpp +9 -3
- data/ext/libsass/src/sass.hpp +12 -9
- data/ext/libsass/src/sass2scss.cpp +45 -14
- data/ext/libsass/src/sass_context.cpp +18 -15
- data/ext/libsass/src/sass_functions.cpp +6 -3
- data/ext/libsass/src/sass_functions.hpp +1 -1
- data/ext/libsass/src/sass_util.cpp +3 -0
- data/ext/libsass/src/sass_values.cpp +21 -13
- data/ext/libsass/src/source_map.cpp +5 -2
- data/ext/libsass/src/source_map.hpp +2 -2
- data/ext/libsass/src/subset_map.cpp +4 -1
- data/ext/libsass/src/to_value.cpp +23 -21
- data/ext/libsass/src/to_value.hpp +18 -22
- data/ext/libsass/src/units.cpp +4 -0
- data/ext/libsass/src/units.hpp +1 -0
- data/ext/libsass/src/utf8/checked.h +12 -10
- data/ext/libsass/src/utf8/core.h +3 -0
- data/ext/libsass/src/utf8_string.cpp +3 -0
- data/ext/libsass/src/util.cpp +67 -75
- data/ext/libsass/src/util.hpp +64 -19
- data/ext/libsass/src/util_string.cpp +75 -0
- data/ext/libsass/src/util_string.hpp +19 -0
- data/ext/libsass/src/values.cpp +22 -13
- data/ext/libsass/src/values.hpp +2 -2
- data/ext/libsass/win/libsass.targets +30 -4
- data/ext/libsass/win/libsass.vcxproj.filters +82 -4
- data/lib/sassc.rb +24 -0
- data/lib/sassc/engine.rb +2 -2
- data/lib/sassc/native.rb +8 -1
- data/lib/sassc/version.rb +1 -1
- data/sassc.gemspec +19 -11
- data/test/engine_test.rb +26 -1
- data/test/native_test.rb +1 -1
- metadata +66 -72
- data/ext/Rakefile +0 -3
- data/ext/libsass/.github/CONTRIBUTING.md +0 -65
- data/ext/libsass/.github/ISSUE_TEMPLATE.md +0 -54
- data/ext/libsass/.travis.yml +0 -64
- data/ext/libsass/Readme.md +0 -104
- data/ext/libsass/SECURITY.md +0 -10
- data/ext/libsass/appveyor.yml +0 -91
- data/ext/libsass/docs/README.md +0 -20
- data/ext/libsass/docs/api-context-example.md +0 -45
- data/ext/libsass/docs/api-context-internal.md +0 -163
- data/ext/libsass/docs/api-context.md +0 -295
- data/ext/libsass/docs/api-doc.md +0 -215
- data/ext/libsass/docs/api-function-example.md +0 -67
- data/ext/libsass/docs/api-function-internal.md +0 -8
- data/ext/libsass/docs/api-function.md +0 -74
- data/ext/libsass/docs/api-importer-example.md +0 -112
- data/ext/libsass/docs/api-importer-internal.md +0 -20
- data/ext/libsass/docs/api-importer.md +0 -86
- data/ext/libsass/docs/api-value-example.md +0 -55
- data/ext/libsass/docs/api-value-internal.md +0 -76
- data/ext/libsass/docs/api-value.md +0 -154
- data/ext/libsass/docs/build-on-darwin.md +0 -27
- data/ext/libsass/docs/build-on-gentoo.md +0 -55
- data/ext/libsass/docs/build-on-windows.md +0 -139
- data/ext/libsass/docs/build-shared-library.md +0 -35
- data/ext/libsass/docs/build-with-autotools.md +0 -78
- data/ext/libsass/docs/build-with-makefiles.md +0 -68
- data/ext/libsass/docs/build-with-mingw.md +0 -107
- data/ext/libsass/docs/build-with-visual-studio.md +0 -90
- data/ext/libsass/docs/build.md +0 -97
- data/ext/libsass/docs/compatibility-plan.md +0 -48
- data/ext/libsass/docs/contributing.md +0 -17
- data/ext/libsass/docs/custom-functions-internal.md +0 -122
- data/ext/libsass/docs/dev-ast-memory.md +0 -223
- data/ext/libsass/docs/implementations.md +0 -56
- data/ext/libsass/docs/plugins.md +0 -47
- data/ext/libsass/docs/setup-environment.md +0 -68
- data/ext/libsass/docs/source-map-internals.md +0 -51
- data/ext/libsass/docs/trace.md +0 -26
- data/ext/libsass/docs/triage.md +0 -17
- data/ext/libsass/docs/unicode.md +0 -39
- data/ext/libsass/extconf.rb +0 -6
- data/ext/libsass/script/bootstrap +0 -13
- data/ext/libsass/script/branding +0 -10
- data/ext/libsass/script/ci-build-libsass +0 -134
- data/ext/libsass/script/ci-build-plugin +0 -62
- data/ext/libsass/script/ci-install-compiler +0 -6
- data/ext/libsass/script/ci-install-deps +0 -20
- data/ext/libsass/script/ci-report-coverage +0 -42
- data/ext/libsass/script/spec +0 -5
- data/ext/libsass/script/tap-driver +0 -652
- data/ext/libsass/script/tap-runner +0 -1
- data/ext/libsass/script/test-leaks.pl +0 -103
- data/ext/libsass/src/functions.cpp +0 -2234
- data/ext/libsass/src/functions.hpp +0 -198
- data/ext/libsass/src/to_c.hpp +0 -39
- data/ext/libsass/test/test_node.cpp +0 -94
- data/ext/libsass/test/test_paths.cpp +0 -28
- data/ext/libsass/test/test_selector_difference.cpp +0 -25
- data/ext/libsass/test/test_specificity.cpp +0 -25
- data/ext/libsass/test/test_subset_map.cpp +0 -472
- data/ext/libsass/test/test_superselector.cpp +0 -69
- data/ext/libsass/test/test_unification.cpp +0 -31
- data/lib/tasks/libsass.rb +0 -33
@@ -0,0 +1,75 @@
|
|
1
|
+
#include "util_string.hpp"
|
2
|
+
|
3
|
+
#include <algorithm>
|
4
|
+
|
5
|
+
namespace Sass {
|
6
|
+
namespace Util {
|
7
|
+
|
8
|
+
std::string rtrim(const std::string &str) {
|
9
|
+
std::string trimmed = str;
|
10
|
+
size_t pos_ws = trimmed.find_last_not_of(" \t\n\v\f\r");
|
11
|
+
if (pos_ws != std::string::npos) {
|
12
|
+
trimmed.erase(pos_ws + 1);
|
13
|
+
} else {
|
14
|
+
trimmed.clear();
|
15
|
+
}
|
16
|
+
return trimmed;
|
17
|
+
}
|
18
|
+
|
19
|
+
std::string normalize_newlines(const std::string& str) {
|
20
|
+
std::string result;
|
21
|
+
result.reserve(str.size());
|
22
|
+
std::size_t pos = 0;
|
23
|
+
while (true) {
|
24
|
+
const std::size_t newline = str.find_first_of("\n\f\r", pos);
|
25
|
+
if (newline == std::string::npos) break;
|
26
|
+
result.append(str, pos, newline - pos);
|
27
|
+
result += '\n';
|
28
|
+
if (str[newline] == '\r' && str[newline + 1] == '\n') {
|
29
|
+
pos = newline + 2;
|
30
|
+
} else {
|
31
|
+
pos = newline + 1;
|
32
|
+
}
|
33
|
+
}
|
34
|
+
result.append(str, pos, std::string::npos);
|
35
|
+
return result;
|
36
|
+
}
|
37
|
+
|
38
|
+
std::string normalize_underscores(const std::string& str) {
|
39
|
+
std::string normalized = str;
|
40
|
+
std::replace(normalized.begin(), normalized.end(), '_', '-');
|
41
|
+
return normalized;
|
42
|
+
}
|
43
|
+
|
44
|
+
std::string normalize_decimals(const std::string& str) {
|
45
|
+
std::string normalized;
|
46
|
+
if (!str.empty() && str[0] == '.') {
|
47
|
+
normalized.reserve(str.size() + 1);
|
48
|
+
normalized += '0';
|
49
|
+
normalized += str;
|
50
|
+
} else {
|
51
|
+
normalized = str;
|
52
|
+
}
|
53
|
+
return normalized;
|
54
|
+
}
|
55
|
+
|
56
|
+
char opening_bracket_for(char closing_bracket) {
|
57
|
+
switch (closing_bracket) {
|
58
|
+
case ')': return '(';
|
59
|
+
case ']': return '[';
|
60
|
+
case '}': return '{';
|
61
|
+
default: return '\0';
|
62
|
+
}
|
63
|
+
}
|
64
|
+
|
65
|
+
char closing_bracket_for(char opening_bracket) {
|
66
|
+
switch (opening_bracket) {
|
67
|
+
case '(': return ')';
|
68
|
+
case '[': return ']';
|
69
|
+
case '{': return '}';
|
70
|
+
default: return '\0';
|
71
|
+
}
|
72
|
+
}
|
73
|
+
|
74
|
+
} // namespace Sass
|
75
|
+
} // namespace Util
|
@@ -0,0 +1,19 @@
|
|
1
|
+
#ifndef SASS_UTIL_STRING_H
|
2
|
+
#define SASS_UTIL_STRING_H
|
3
|
+
|
4
|
+
#include <string>
|
5
|
+
|
6
|
+
namespace Sass {
|
7
|
+
namespace Util {
|
8
|
+
|
9
|
+
std::string rtrim(const std::string& str);
|
10
|
+
|
11
|
+
std::string normalize_newlines(const std::string& str);
|
12
|
+
std::string normalize_underscores(const std::string& str);
|
13
|
+
std::string normalize_decimals(const std::string& str);
|
14
|
+
char opening_bracket_for(char closing_bracket);
|
15
|
+
char closing_bracket_for(char opening_bracket);
|
16
|
+
|
17
|
+
} // namespace Sass
|
18
|
+
} // namespace Util
|
19
|
+
#endif // SASS_UTIL_STRING_H
|
data/ext/libsass/src/values.cpp
CHANGED
@@ -1,4 +1,7 @@
|
|
1
|
+
// sass.hpp must go before all system headers to get the
|
2
|
+
// __EXTENSIONS__ fix on Solaris.
|
1
3
|
#include "sass.hpp"
|
4
|
+
|
2
5
|
#include "sass.h"
|
3
6
|
#include "values.hpp"
|
4
7
|
|
@@ -7,21 +10,26 @@
|
|
7
10
|
namespace Sass {
|
8
11
|
|
9
12
|
// convert value from C++ side to C-API
|
10
|
-
union Sass_Value* ast_node_to_sass_value (const
|
13
|
+
union Sass_Value* ast_node_to_sass_value (const Expression* val)
|
11
14
|
{
|
12
15
|
if (val->concrete_type() == Expression::NUMBER)
|
13
16
|
{
|
14
|
-
|
17
|
+
const Number* res = Cast<Number>(val);
|
15
18
|
return sass_make_number(res->value(), res->unit().c_str());
|
16
19
|
}
|
17
20
|
else if (val->concrete_type() == Expression::COLOR)
|
18
21
|
{
|
19
|
-
|
20
|
-
|
22
|
+
if (const Color_RGBA* rgba = Cast<Color_RGBA>(val)) {
|
23
|
+
return sass_make_color(rgba->r(), rgba->g(), rgba->b(), rgba->a());
|
24
|
+
} else {
|
25
|
+
// ToDo: allow to also use HSLA colors!!
|
26
|
+
Color_RGBA_Obj col = Cast<Color>(val)->copyAsRGBA();
|
27
|
+
return sass_make_color(col->r(), col->g(), col->b(), col->a());
|
28
|
+
}
|
21
29
|
}
|
22
30
|
else if (val->concrete_type() == Expression::LIST)
|
23
31
|
{
|
24
|
-
|
32
|
+
const List* l = Cast<List>(val);
|
25
33
|
union Sass_Value* list = sass_make_list(l->size(), l->separator(), l->is_bracketed());
|
26
34
|
for (size_t i = 0, L = l->length(); i < L; ++i) {
|
27
35
|
Expression_Obj obj = l->at(i);
|
@@ -32,7 +40,7 @@ namespace Sass {
|
|
32
40
|
}
|
33
41
|
else if (val->concrete_type() == Expression::MAP)
|
34
42
|
{
|
35
|
-
|
43
|
+
const Map* m = Cast<Map>(val);
|
36
44
|
union Sass_Value* map = sass_make_map(m->length());
|
37
45
|
size_t i = 0; for (Expression_Obj key : m->keys()) {
|
38
46
|
sass_map_set_key(map, i, ast_node_to_sass_value(key));
|
@@ -47,16 +55,16 @@ namespace Sass {
|
|
47
55
|
}
|
48
56
|
else if (val->concrete_type() == Expression::BOOLEAN)
|
49
57
|
{
|
50
|
-
|
58
|
+
const Boolean* res = Cast<Boolean>(val);
|
51
59
|
return sass_make_boolean(res->value());
|
52
60
|
}
|
53
61
|
else if (val->concrete_type() == Expression::STRING)
|
54
62
|
{
|
55
|
-
if (
|
63
|
+
if (const String_Quoted* qstr = Cast<String_Quoted>(val))
|
56
64
|
{
|
57
65
|
return sass_make_qstring(qstr->value().c_str());
|
58
66
|
}
|
59
|
-
else if (
|
67
|
+
else if (const String_Constant* cstr = Cast<String_Constant>(val))
|
60
68
|
{
|
61
69
|
return sass_make_string(cstr->value().c_str());
|
62
70
|
}
|
@@ -65,7 +73,7 @@ namespace Sass {
|
|
65
73
|
}
|
66
74
|
|
67
75
|
// convert value from C-API to C++ side
|
68
|
-
|
76
|
+
Value* sass_value_to_ast_node (const union Sass_Value* val)
|
69
77
|
{
|
70
78
|
switch (sass_value_get_tag(val)) {
|
71
79
|
case SASS_NUMBER:
|
@@ -78,7 +86,8 @@ namespace Sass {
|
|
78
86
|
ParserState("[C-VALUE]"),
|
79
87
|
sass_boolean_get_value(val));
|
80
88
|
case SASS_COLOR:
|
81
|
-
|
89
|
+
// ToDo: allow to also use HSLA colors!!
|
90
|
+
return SASS_MEMORY_NEW(Color_RGBA,
|
82
91
|
ParserState("[C-VALUE]"),
|
83
92
|
sass_color_get_r(val),
|
84
93
|
sass_color_get_g(val),
|
@@ -94,7 +103,7 @@ namespace Sass {
|
|
94
103
|
ParserState("[C-VALUE]"),
|
95
104
|
sass_string_get_value(val));
|
96
105
|
case SASS_LIST: {
|
97
|
-
|
106
|
+
List* l = SASS_MEMORY_NEW(List,
|
98
107
|
ParserState("[C-VALUE]"),
|
99
108
|
sass_list_get_length(val),
|
100
109
|
sass_list_get_separator(val));
|
@@ -105,7 +114,7 @@ namespace Sass {
|
|
105
114
|
return l;
|
106
115
|
}
|
107
116
|
case SASS_MAP: {
|
108
|
-
|
117
|
+
Map* m = SASS_MEMORY_NEW(Map, ParserState("[C-VALUE]"));
|
109
118
|
for (size_t i = 0, L = sass_map_get_length(val); i < L; ++i) {
|
110
119
|
*m << std::make_pair(
|
111
120
|
sass_value_to_ast_node(sass_map_get_key(val, i)),
|
data/ext/libsass/src/values.hpp
CHANGED
@@ -5,8 +5,8 @@
|
|
5
5
|
|
6
6
|
namespace Sass {
|
7
7
|
|
8
|
-
union Sass_Value* ast_node_to_sass_value (const
|
9
|
-
|
8
|
+
union Sass_Value* ast_node_to_sass_value (const Expression* val);
|
9
|
+
Value* sass_value_to_ast_node (const union Sass_Value* val);
|
10
10
|
|
11
11
|
}
|
12
12
|
#endif
|
@@ -11,6 +11,9 @@
|
|
11
11
|
</ItemGroup>
|
12
12
|
<ItemGroup Label="LibSass Headers">
|
13
13
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\ast.hpp" />
|
14
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\ast_values.hpp" />
|
15
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\ast_selectors.hpp" />
|
16
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\ast_supports.hpp" />
|
14
17
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\ast_def_macros.hpp" />
|
15
18
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\memory\SharedPtr.hpp" />
|
16
19
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\ast_factory.hpp" />
|
@@ -32,7 +35,14 @@
|
|
32
35
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\expand.hpp" />
|
33
36
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\extend.hpp" />
|
34
37
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\file.hpp" />
|
35
|
-
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\
|
38
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\fn_utils.hpp" />
|
39
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\fn_miscs.hpp" />
|
40
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\fn_maps.hpp" />
|
41
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\fn_lists.hpp" />
|
42
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\fn_colors.hpp" />
|
43
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\fn_numbers.hpp" />
|
44
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\fn_strings.hpp" />
|
45
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\fn_selectors.hpp" />
|
36
46
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\inspect.hpp" />
|
37
47
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\json.hpp" />
|
38
48
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\kwd_arg_macros.hpp" />
|
@@ -55,7 +65,8 @@
|
|
55
65
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\sass_values.hpp" />
|
56
66
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\source_map.hpp" />
|
57
67
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\subset_map.hpp" />
|
58
|
-
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\
|
68
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\ast2c.hpp" />
|
69
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\c2ast.hpp" />
|
59
70
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\to_value.hpp" />
|
60
71
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\units.hpp" />
|
61
72
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\utf8.h" />
|
@@ -64,10 +75,16 @@
|
|
64
75
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\utf8\unchecked.h" />
|
65
76
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\utf8_string.hpp" />
|
66
77
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\util.hpp" />
|
78
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\util_string.hpp" />
|
67
79
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\values.hpp" />
|
68
80
|
</ItemGroup>
|
69
81
|
<ItemGroup Label="LibSass Sources">
|
70
82
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\ast.cpp" />
|
83
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\ast_values.cpp" />
|
84
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\ast_supports.cpp" />
|
85
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\ast_sel_cmp.cpp" />
|
86
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\ast_sel_unify.cpp" />
|
87
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\ast_selectors.cpp" />
|
71
88
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\memory\SharedPtr.cpp" />
|
72
89
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\ast_fwd_decl.cpp" />
|
73
90
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\base64vlq.cpp" />
|
@@ -86,7 +103,14 @@
|
|
86
103
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\expand.cpp" />
|
87
104
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\extend.cpp" />
|
88
105
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\file.cpp" />
|
89
|
-
<ClCompile Include="$(LIBSASS_SRC_DIR)\
|
106
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\fn_utils.cpp" />
|
107
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\fn_miscs.cpp" />
|
108
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\fn_maps.cpp" />
|
109
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\fn_lists.cpp" />
|
110
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\fn_colors.cpp" />
|
111
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\fn_numbers.cpp" />
|
112
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\fn_strings.cpp" />
|
113
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\fn_selectors.cpp" />
|
90
114
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\inspect.cpp" />
|
91
115
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\json.cpp" />
|
92
116
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\lexer.cpp" />
|
@@ -108,11 +132,13 @@
|
|
108
132
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\sass2scss.cpp" />
|
109
133
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\source_map.cpp" />
|
110
134
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\subset_map.cpp" />
|
111
|
-
<ClCompile Include="$(LIBSASS_SRC_DIR)\
|
135
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\ast2c.cpp" />
|
136
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\c2ast.cpp" />
|
112
137
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\to_value.cpp" />
|
113
138
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\units.cpp" />
|
114
139
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\utf8_string.cpp" />
|
115
140
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\util.cpp" />
|
141
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\util_string.cpp" />
|
116
142
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\values.cpp" />
|
117
143
|
</ItemGroup>
|
118
144
|
</Project>
|
@@ -48,6 +48,15 @@
|
|
48
48
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\ast.hpp">
|
49
49
|
<Filter>Headers</Filter>
|
50
50
|
</ClInclude>
|
51
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\ast_values.hpp">
|
52
|
+
<Filter>Headers</Filter>
|
53
|
+
</ClInclude>
|
54
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\ast_selectors.hpp">
|
55
|
+
<Filter>Headers</Filter>
|
56
|
+
</ClInclude>
|
57
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\ast_supports.hpp">
|
58
|
+
<Filter>Headers</Filter>
|
59
|
+
</ClInclude>
|
51
60
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\memory\SharedPtr.hpp">
|
52
61
|
<Filter>Headers</Filter>
|
53
62
|
</ClInclude>
|
@@ -108,7 +117,28 @@
|
|
108
117
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\file.hpp">
|
109
118
|
<Filter>Headers</Filter>
|
110
119
|
</ClInclude>
|
111
|
-
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\
|
120
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\fn_utils.hpp">
|
121
|
+
<Filter>Headers</Filter>
|
122
|
+
</ClInclude>
|
123
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\fn_miscs.hpp">
|
124
|
+
<Filter>Headers</Filter>
|
125
|
+
</ClInclude>
|
126
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\fn_maps.hpp">
|
127
|
+
<Filter>Headers</Filter>
|
128
|
+
</ClInclude>
|
129
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\fn_lists.hpp">
|
130
|
+
<Filter>Headers</Filter>
|
131
|
+
</ClInclude>
|
132
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\fn_colors.hpp">
|
133
|
+
<Filter>Headers</Filter>
|
134
|
+
</ClInclude>
|
135
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\fn_numbers.hpp">
|
136
|
+
<Filter>Headers</Filter>
|
137
|
+
</ClInclude>
|
138
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\fn_strings.hpp">
|
139
|
+
<Filter>Headers</Filter>
|
140
|
+
</ClInclude>
|
141
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\fn_selectors.hpp">
|
112
142
|
<Filter>Headers</Filter>
|
113
143
|
</ClInclude>
|
114
144
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\inspect.hpp">
|
@@ -174,7 +204,10 @@
|
|
174
204
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\subset_map.hpp">
|
175
205
|
<Filter>Headers</Filter>
|
176
206
|
</ClInclude>
|
177
|
-
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\
|
207
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\ast2c.hpp">
|
208
|
+
<Filter>Headers</Filter>
|
209
|
+
</ClInclude>
|
210
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\c2ast.hpp">
|
178
211
|
<Filter>Headers</Filter>
|
179
212
|
</ClInclude>
|
180
213
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\to_value.hpp">
|
@@ -201,6 +234,9 @@
|
|
201
234
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\util.hpp">
|
202
235
|
<Filter>Headers</Filter>
|
203
236
|
</ClInclude>
|
237
|
+
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\util_string.hpp">
|
238
|
+
<Filter>Headers</Filter>
|
239
|
+
</ClInclude>
|
204
240
|
<ClInclude Include="$(LIBSASS_HEADERS_DIR)\values.hpp">
|
205
241
|
<Filter>Headers</Filter>
|
206
242
|
</ClInclude>
|
@@ -215,6 +251,21 @@
|
|
215
251
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\ast.cpp">
|
216
252
|
<Filter>Sources</Filter>
|
217
253
|
</ClCompile>
|
254
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\ast_values.cpp">
|
255
|
+
<Filter>Sources</Filter>
|
256
|
+
</ClCompile>
|
257
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\ast_selectors.cpp">
|
258
|
+
<Filter>Sources</Filter>
|
259
|
+
</ClCompile>
|
260
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\ast_supports.cpp">
|
261
|
+
<Filter>Sources</Filter>
|
262
|
+
</ClCompile>
|
263
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\ast_sel_cmp.cpp">
|
264
|
+
<Filter>Sources</Filter>
|
265
|
+
</ClCompile>
|
266
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\ast_sel_unify.cpp">
|
267
|
+
<Filter>Sources</Filter>
|
268
|
+
</ClCompile>
|
218
269
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\memory\SharedPtr.cpp">
|
219
270
|
<Filter>Sources</Filter>
|
220
271
|
</ClCompile>
|
@@ -269,7 +320,28 @@
|
|
269
320
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\file.cpp">
|
270
321
|
<Filter>Sources</Filter>
|
271
322
|
</ClCompile>
|
272
|
-
<ClCompile Include="$(LIBSASS_SRC_DIR)\
|
323
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\fn_utils.cpp">
|
324
|
+
<Filter>Sources</Filter>
|
325
|
+
</ClCompile>
|
326
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\fn_miscs.cpp">
|
327
|
+
<Filter>Sources</Filter>
|
328
|
+
</ClCompile>
|
329
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\fn_maps.cpp">
|
330
|
+
<Filter>Sources</Filter>
|
331
|
+
</ClCompile>
|
332
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\fn_lists.cpp">
|
333
|
+
<Filter>Sources</Filter>
|
334
|
+
</ClCompile>
|
335
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\fn_colors.cpp">
|
336
|
+
<Filter>Sources</Filter>
|
337
|
+
</ClCompile>
|
338
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\fn_numbers.cpp">
|
339
|
+
<Filter>Sources</Filter>
|
340
|
+
</ClCompile>
|
341
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\fn_strings.cpp">
|
342
|
+
<Filter>Sources</Filter>
|
343
|
+
</ClCompile>
|
344
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\fn_selectors.cpp">
|
273
345
|
<Filter>Sources</Filter>
|
274
346
|
</ClCompile>
|
275
347
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\inspect.cpp">
|
@@ -335,7 +407,10 @@
|
|
335
407
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\subset_map.cpp">
|
336
408
|
<Filter>Sources</Filter>
|
337
409
|
</ClCompile>
|
338
|
-
<ClCompile Include="$(LIBSASS_SRC_DIR)\
|
410
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\ast2c.cpp">
|
411
|
+
<Filter>Sources</Filter>
|
412
|
+
</ClCompile>
|
413
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\c2ast.cpp">
|
339
414
|
<Filter>Sources</Filter>
|
340
415
|
</ClCompile>
|
341
416
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\to_value.cpp">
|
@@ -350,6 +425,9 @@
|
|
350
425
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\util.cpp">
|
351
426
|
<Filter>Sources</Filter>
|
352
427
|
</ClCompile>
|
428
|
+
<ClCompile Include="$(LIBSASS_SRC_DIR)\util_string.cpp">
|
429
|
+
<Filter>Sources</Filter>
|
430
|
+
</ClCompile>
|
353
431
|
<ClCompile Include="$(LIBSASS_SRC_DIR)\values.cpp">
|
354
432
|
<Filter>Sources</Filter>
|
355
433
|
</ClCompile>
|
data/lib/sassc.rb
CHANGED
@@ -1,6 +1,30 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module SassC
|
4
|
+
# The global load paths for Sass files. This is meant for plugins and
|
5
|
+
# libraries to register the paths to their Sass stylesheets to that they may
|
6
|
+
# be `@imported`. This load path is used by every instance of {Sass::Engine}.
|
7
|
+
# They are lower-precedence than any load paths passed in via the
|
8
|
+
# {file:SASS_REFERENCE.md#load_paths-option `:load_paths` option}.
|
9
|
+
#
|
10
|
+
# If the `SASS_PATH` environment variable is set,
|
11
|
+
# the initial value of `load_paths` will be initialized based on that.
|
12
|
+
# The variable should be a colon-separated list of path names
|
13
|
+
# (semicolon-separated on Windows).
|
14
|
+
#
|
15
|
+
# Note that files on the global load path are never compiled to CSS
|
16
|
+
# themselves, even if they aren't partials. They exist only to be imported.
|
17
|
+
#
|
18
|
+
# @example
|
19
|
+
# SassC.load_paths << File.dirname(__FILE__ + '/sass')
|
20
|
+
# @return [Array<String, Pathname, Sass::Importers::Base>]
|
21
|
+
def self.load_paths
|
22
|
+
@load_paths ||= if ENV['SASS_PATH']
|
23
|
+
ENV['SASS_PATH'].split(SassC::Util.windows? ? ';' : ':')
|
24
|
+
else
|
25
|
+
[]
|
26
|
+
end
|
27
|
+
end
|
4
28
|
end
|
5
29
|
|
6
30
|
require_relative "sassc/version"
|