Connor Skees
e9f2cdbe4d
resolve clippy lints
2020-07-02 15:57:14 -04:00
Connor Skees
1b033c3643
properly handle chained @content
2020-07-02 15:22:15 -04:00
Connor Skees
a88f07da54
allow @content
to take arguments
2020-07-02 10:31:32 -04:00
ConnorSkees
402d7bf8e6
unignore passing tests
2020-06-23 04:28:54 -04:00
ConnorSkees
c1b5ff5730
prettify imports
2020-06-16 20:00:11 -04:00
ConnorSkees
71dd7df951
reimplement parsing
2020-06-16 19:38:30 -04:00
ConnorSkees
b64ad5b1f3
resolve all clippy lints
2020-05-31 05:32:19 -04:00
ConnorSkees
bb53aaab8a
replace std::borrow::Cow with beef::Cow
2020-05-25 13:09:20 -04:00
ConnorSkees
ec83a9dff7
clippy
2020-05-24 17:41:24 -04:00
ConnorSkees
368f0cf596
refactor away clone inside get-function
2020-05-22 20:24:01 -04:00
ConnorSkees
b4b2edc9a4
use Identifier for SassFunction names
2020-05-22 20:13:39 -04:00
ConnorSkees
283a2097ff
rename Value::Ident to Value::String
2020-05-22 14:35:41 -04:00
ConnorSkees
969726eb30
Revert string interning
...
There existed issues related to multithreaded tests that are difficult
to resolve. In the future interning may be reimplemented but in a more
limited capacity.
The motivation behind interning *values* was that it appeared checking
for named colors was responsible for much of the time lost when parsing
unquoted strings. If interning were to be reimplemented, it may make
sense to limit it solely to identifiers and style properties.
2020-05-22 14:20:31 -04:00
ConnorSkees
b15740976c
remove superfluous allocations when resolving idents
2020-05-22 13:49:19 -04:00
ConnorSkees
9a6c8ce019
add string interning
...
this seems to improve performance by ~20% as well as significantly
decrease memory usage
2020-05-21 22:46:40 -04:00
ConnorSkees
d88ac86bd1
consolidate builtin imports
2020-05-18 17:50:52 -04:00
ConnorSkees
1fb6822259
rename register to declare
2020-05-16 18:01:06 -04:00
ConnorSkees
6729f24b17
Value::inspect returns cow
2020-05-06 11:50:35 -04:00
ConnorSkees
0aed492123
move builtin fns to outer scope to reduce nesting
2020-04-30 19:36:34 -04:00
ConnorSkees
26aabb42ad
simplify declaration of meta fns
2020-04-30 18:31:55 -04:00
ConnorSkees
2eef3e9f6a
store &'static str rather than String for builtin fn names
2020-04-30 15:00:57 -04:00
ConnorSkees
f4f4fe2e03
wrap match in Ok rather than all branches
2020-04-26 18:51:08 -04:00
ConnorSkees
680790c49a
replace max_args! macro with builtin method
2020-04-22 06:17:52 -04:00
ConnorSkees
52c6ed0b64
remove QuoteKind::Single variant
2020-04-18 13:19:30 -04:00
ConnorSkees
62f9f7da4f
integrate error handling with codemap
2020-04-12 19:37:12 -04:00
ConnorSkees
ef282c5c18
consolidate inspect implementations
2020-04-06 00:27:09 -04:00
ConnorSkees
b7be1705a2
args and default values are lazily evaluated
2020-04-04 18:17:04 -04:00
ConnorSkees
24983b9d20
rustfmt
2020-04-04 14:13:17 -04:00
ConnorSkees
943299de74
better handling of $module in get-function
2020-04-04 12:45:30 -04:00
ConnorSkees
065f6515e9
disallow both css and module in get-function
2020-04-04 12:38:07 -04:00
ConnorSkees
051185e280
implement builtin function call()
2020-04-04 12:31:43 -04:00
ConnorSkees
c0eaf4c5f6
allow semicolon after closing brace
2020-04-04 03:00:38 -04:00
ConnorSkees
81c85a6f86
handle builtin functions in get-function
2020-04-03 23:49:44 -04:00
ConnorSkees
3f98d1abca
initial implementation of get-function()
2020-04-03 21:38:34 -04:00
ConnorSkees
60c16de830
inspect([]) => []
2020-04-03 16:53:45 -04:00
ConnorSkees
8e3e23c6cd
builtin functions take args by value
2020-04-02 13:45:14 -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
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
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
d0b56c57d2
handle quoted strings in variable-exists
2020-03-23 14:34:03 -04:00
ConnorSkees
2db2ab10ca
feature-exists units-level-3
2020-03-19 23:53:29 -04:00
ConnorSkees
dcb712e3d4
Refactor unit conversions into separate file
2020-03-19 16:24:31 -04:00
ConnorSkees
42787ec700
proper error message in unit()
when not given number
2020-03-17 10:10:42 -04:00
ConnorSkees
51585235c3
Remove decl! macro
...
This lets rustfmt work and gives better autocomplete and error messages
inside builtin functions.
2020-03-16 10:35:38 -04:00
ConnorSkees
276134eb93
prefer hashmap over btreemap where ordering is unimportant
2020-03-03 19:51:02 -05:00