1139 Commits

Author SHA1 Message Date
ConnorSkees
b292d56efa refactor function body to allow more than at-rules 2020-03-24 01:26:23 -04:00
ConnorSkees
3afe88e2d6 !global variables are also in local scope 2020-03-24 00:43:09 -04:00
ConnorSkees
0979f3957b Revert "check global scope for variable before local"
This reverts commit 27a9578b17a8ed8227cb190af38762111edae58f.

This ended up not being the desired behavior. It seems that instead of
checking the global scope first, variables declared with `!global` are
inserted into both the local and global scopes.
2020-03-24 00:31:56 -04:00
ConnorSkees
27a9578b17 check global scope for variable before local 2020-03-24 00:26:55 -04:00
ConnorSkees
c29088b558 allow trailing commas 2020-03-24 00:17:18 -04:00
ConnorSkees
0ded248e1e allow comma separated bracketed list in function args 2020-03-23 23:52:15 -04:00
ConnorSkees
430747d06b handle empty bracketed lists 2020-03-23 23:19:13 -04:00
ConnorSkees
c1ee84b6fc implement builtin function is-bracketed 2020-03-23 23:08:01 -04:00
ConnorSkees
d88342fd9b rustfmt 2020-03-23 23:06:05 -04:00
ConnorSkees
2705d79d1a str-slice by chars rather than bytes 2020-03-23 22:47:59 -04:00
ConnorSkees
dc0d7c4e89 properly emit more variants of character escape 2020-03-23 22:26:52 -04:00
ConnorSkees
f69bbb3b69 rustfmt 2020-03-23 22:13:11 -04:00
ConnorSkees
ae33efcc30 inspect for empty list returns () 2020-03-23 20:14:47 -04:00
ConnorSkees
cd40ada653 properly escape backslashes in quotes in variables 2020-03-23 20:09:27 -04:00
ConnorSkees
981bf27cb8 properly parse and emit bracketed lists 2020-03-23 19:56:24 -04:00
ConnorSkees
9233b1d2ba allow semicolons in strings 2020-03-23 16:29:55 -04:00
ConnorSkees
b7492a8546 mixin-exists allows 2 args 2020-03-23 15:26:07 -04:00
ConnorSkees
81c5a34211 function-exists allows 2 args 2020-03-23 15:25:26 -04:00
ConnorSkees
4b529a1236 proper error messages in (mixin|function)-exists 2020-03-23 15:22:16 -04:00
ConnorSkees
e6f2c26bc6 type-of(!important) returns 'string' 2020-03-23 15:13:19 -04:00
ConnorSkees
68d2bc7e17 global variables feature-exists 2020-03-23 15:06:04 -04:00
ConnorSkees
0f310e9582 proper error message for non-string to feature-exists 2020-03-23 15:02:50 -04:00
ConnorSkees
b91683b02e implement builtin function global-var-exists 2020-03-23 14:53:22 -04:00
ConnorSkees
785c824cd8 check global scope for functions as well 2020-03-23 14:46:15 -04:00
ConnorSkees
d0b56c57d2 handle quoted strings in variable-exists 2020-03-23 14:34:03 -04:00
ConnorSkees
712795544b rustfmt 2020-03-23 14:33:44 -04:00
ConnorSkees
991b87f335 str-slice start/end equality does not preclude output 2020-03-23 14:16:27 -04:00
ConnorSkees
893c758e13 string length is number of chars 2020-03-23 14:11:06 -04:00
ConnorSkees
f4f9a79b2b handle large integers in builtin string functions 2020-03-23 14:03:47 -04:00
ConnorSkees
795c8bdb05 error messages end in periods 2020-03-23 12:53:55 -04:00
ConnorSkees
01c1cf3bb3 prefer the word lightness over luminance 2020-03-23 12:52:23 -04:00
ConnorSkees
2698e8257b improve rgb(a)/hsl(a) 1 arg errors 2020-03-23 12:42:58 -04:00
ConnorSkees
98a99684b7 refactor quote normalization 2020-03-23 12:12:08 -04:00
ConnorSkees
6460c97ef4 better error messages for zero arg hsl(a) 2020-03-22 23:41:02 -04:00
ConnorSkees
6aae433d21 better error message for missing rgb/rgba args 2020-03-22 23:28:19 -04:00
ConnorSkees
0be8828bf0 make better use of num traits 2020-03-22 22:28:54 -04:00
ConnorSkees
0e0b01f595 unquoted, empty strings are null 2020-03-22 18:36:21 -04:00
ConnorSkees
d19c112765 str-len is a count of characters, not bytes 2020-03-22 18:24:09 -04:00
ConnorSkees
c392c33ad8 properly insert into empty strings 2020-03-22 18:13:55 -04:00
ConnorSkees
92809b1d03 Allow attributes in test macros 2020-03-22 18:13:23 -04:00
ConnorSkees
585786318f handle double wide characters in str-insert 2020-03-22 17:49:21 -04:00
ConnorSkees
9965fe99fe handle negative numbers more accurately in str-insert 2020-03-22 17:13:38 -04:00
ConnorSkees
047fd1d3de handle str-insert edge cases 2020-03-22 16:49:41 -04:00
ConnorSkees
9bf2b9d16c implement builtin function str-insert 2020-03-22 16:14:45 -04:00
ConnorSkees
c0ed933850 implement builtin function str-index 2020-03-22 15:58:32 -04:00
ConnorSkees
4d45844b7a list missing features in readme 2020-03-22 15:44:47 -04:00
ConnorSkees
415b19fc47 implement @content inside mixins 2020-03-22 15:08:13 -04:00
ConnorSkees
907ac3390c refactor functions and mixins into atrule folder 2020-03-22 14:26:33 -04:00
ConnorSkees
29011f88bb Implement builtin function join 2020-03-22 14:04:16 -04:00
ConnorSkees
f9730b9ec5 HACK: somewhat handle unicode escapes 2020-03-22 13:45:41 -04:00