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
d90d998ccd
remove unwrap in Value::is_null
2020-05-24 16:41:09 -04:00
ConnorSkees
7261f57e01
emit proper error for map as rhs of addition
2020-05-22 20:47:53 -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
4ee82e66be
refactor comparison ops to src/value/ops.rs
2020-05-16 22:45:32 -04:00
ConnorSkees
c07bb7ecce
refactor == and != order of operations
2020-05-16 22:43:13 -04:00
ConnorSkees
01858ff543
use static strings inside unit conversion table
2020-05-06 11:55:49 -04:00
ConnorSkees
6729f24b17
Value::inspect returns cow
2020-05-06 11:50:35 -04:00
ConnorSkees
26df276266
Value::to_css_string returns a Cow<'static, str>
2020-05-05 11:08:34 -04:00
ConnorSkees
7db57054e1
emitting get-function is an error
2020-04-26 23:11:04 -04:00
ConnorSkees
c4de587f4e
investigate feature complete inspect()
2020-04-26 18:27:08 -04:00
ConnorSkees
fb7fac5a53
empty bracketed lists are not null
2020-04-26 16:39:44 -04:00
ConnorSkees
33ccabce7b
box color in value
2020-04-21 18:54:19 -04:00
ConnorSkees
3805eaab2b
clippy
2020-04-21 18:22:26 -04:00
ConnorSkees
a6b61082fe
interpolation of strings in idents is literal
2020-04-20 12:12:39 -04:00
ConnorSkees
29886d6845
newlines are no longer replaced with spaces in quoted strings
2020-04-20 11:48:17 -04:00
ConnorSkees
9790846c99
inspect comma separated list of comma separated lists
2020-04-20 03:07:02 -04:00
ConnorSkees
715f6fb94a
inspect single value lists
2020-04-20 02:55:55 -04:00
ConnorSkees
9d9997432a
properly unquote lists
2020-04-19 22:55:25 -04:00
ConnorSkees
18a04b2669
move util hex_char_for() to utils.rs
2020-04-19 15:50:22 -04:00
ConnorSkees
e820395cc5
refactor printing and parsing of quoted strings
2020-04-19 13:51:37 -04:00
ConnorSkees
4ba45bb8c1
more robust handling of is_null
2020-04-19 00:39:18 -04:00
ConnorSkees
305581ad75
properly error when attempting to display map
2020-04-18 20:11:49 -04:00
ConnorSkees
759e5fdfef
simplify ident addition/subtraction
2020-04-18 13:44:11 -04:00
ConnorSkees
fc51798595
change several if statements to match
2020-04-18 13:22:06 -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
97425665f9
consolidate implementation of rgb and rgba
2020-04-06 21:22:03 -04:00
ConnorSkees
7e793392a7
handle special functions calc, element, expression, and progid
2020-04-06 19:26:47 -04:00
ConnorSkees
ef282c5c18
consolidate inspect implementations
2020-04-06 00:27:09 -04:00
ConnorSkees
d550615957
implement order of operations
2020-04-05 17:34:30 -04:00
ConnorSkees
bf8cb594da
rustfmt
2020-04-04 21:07:53 -04:00
ConnorSkees
b44c064481
Rename value/function.rs to value/sass_function.rs
...
This is to faciliate the addition of src/value/css_function.rs and the
inclusion of a special type `CssFunction` which represents a plain css
function.
2020-04-04 18:55:59 -04:00
ConnorSkees
943299de74
better handling of $module in get-function
2020-04-04 12:45:30 -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
2d7f69e3da
equality does unit conversions
2020-04-03 14:34:59 -04:00
ConnorSkees
39031aefff
initial implementation of varargs
2020-04-02 13:33:26 -04:00
ConnorSkees
f46d53d3cc
implement keyword operators
2020-04-01 17:40:35 -04:00
ConnorSkees
e5b7043480
do not print null values inside list
2020-03-31 00:27:00 -04:00
ConnorSkees
beff60ad31
clippy
2020-03-30 17:06:23 -04:00
ConnorSkees
eb478b632d
initial implementation of maps
2020-03-30 15:44:06 -04:00
ConnorSkees
2ce639e9be
implement > < >= <=
2020-03-30 10:42:13 -04:00
ConnorSkees
981bf27cb8
properly parse and emit bracketed lists
2020-03-23 19:56:24 -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