Connor Skees
d360af2cd6
improve code coverage
2021-07-21 09:17:37 -04:00
Connor Skees
7979158465
simplify parsing of @function
and throw error on invalid @charset
2021-07-20 20:41:21 -04:00
Connor Skees
adfecfa83e
remove peekmore dependency
2021-07-11 15:12:46 -04:00
Connor Skees
150ba14b74
clippy
2021-07-03 19:15:31 -04:00
Connor Skees
f17a1e6da2
placate clippy
2020-11-16 03:25:55 -05:00
Connor Skees
c35fa2b8eb
deny non-numeric argument passed to unitless
2020-08-16 20:14:54 -04:00
Connor Skees
074d679cbd
support the @use ... with (...)
syntax
2020-08-06 21:05:40 -04:00
Connor Skees
dbe7f2d50b
use Unit
rather than string as key to unit conversion map
2020-08-01 14:33:22 -04:00
Connor Skees
fbcee00bdd
allow NaN to take units and refactor math.acos
2020-07-26 23:45:02 -04:00
Connor Skees
53cf2816e0
use None
to represent NaN
2020-07-26 19:38:41 -04:00
Connor Skees
eeb0b0a924
implement builtin sass:math
function clamp
2020-07-26 13:21:59 -04:00
Connor Skees
3a7a3f508a
initial parsing work for modules
2020-07-25 19:22:12 -04:00
Connor Skees
67cbf9591a
allow !optional
in @extend
2020-07-24 20:23:54 -04:00
Joe Ling - uni laptop
50d1987af2
Added grass::Options and implemented options.load_paths
2020-07-15 12:37:19 +01:00
Joe Ling - uni laptop
afbae12b72
fixed formatting
2020-07-13 15:39:14 +01:00
Joe Ling - uni laptop
fe26350932
Added load_paths for @import
2020-07-13 14:52:52 +01:00
Connor Skees
a379d870fc
remove Hash impl for Value
2020-07-10 00:17:15 -04:00
Connor Skees
830d56bd77
only evaluate division in certain cases
2020-07-09 23:52:35 -04:00
Connor Skees
1b8e0ebcd2
properly recognize arglist of null as null
2020-07-08 23:49:30 -04:00
Connor Skees
02efd09d80
avoid cloning the entire scope
2020-07-08 17:52:37 -04:00
Connor Skees
790573195f
resolve clippy lints
2020-07-07 01:13:15 -04:00
Connor Skees
57562b52d3
map equality is independent of order
2020-07-07 01:06:22 -04:00
Connor Skees
6138efc059
refactor value equality checks
2020-07-07 00:01:34 -04:00
Connor Skees
7971bfe98b
improve inspect output for arglists with 1 arg
2020-07-06 22:31:30 -04:00
Connor Skees
22cc36b578
more robustly emit empty arglists
2020-07-06 18:41:50 -04:00
Connor Skees
eec454c2d0
Merge branch 'master' of https://github.com/connorskees/grass
2020-07-05 09:36:04 -04:00
Ivan Tham
85ec26001a
Keep parser context with bitflags
2020-07-05 09:35:42 -04:00
Connor Skees
dbfd90d444
better handle maps, arglists, and mul units in @debug
2020-07-05 07:31:10 -04:00
Connor Skees
827225a143
initial implementation of @keyframes
2020-07-04 20:50:53 -04:00
Connor Skees
b28309147e
partially implement inverse units
2020-07-04 11:04:51 -04:00
Connor Skees
e801e4d424
consistently use Value
over Self
in certain methods
2020-07-03 13:00:31 -04:00
Connor Skees
b473717861
rename Value::Function
to Value::FunctionRef
2020-07-03 12:58:09 -04:00
Connor Skees
596def3906
refactor value evaluation
2020-07-03 12:38:20 -04:00
Connor Skees
f437649103
add support for splats
2020-07-02 17:25:52 -04:00
ConnorSkees
9212ff5fa1
resolve clippy lints
2020-06-26 06:12:50 -04:00
ConnorSkees
195079de86
initial implementation of @extend
2020-06-20 06:09:12 -04:00
ConnorSkees
962549e31b
remove most remaining unwraps
2020-06-18 18:22:58 -04:00
ConnorSkees
d90ef7fa41
remove unwrap
s in Value::to_css_string
2020-06-18 18:22:58 -04:00
ConnorSkees
d196a93f91
arglists are lists too
2020-06-18 18:22:58 -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
f3a58e0fa3
initial implementation of selector-* builtin fns
2020-05-31 04:51:41 -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
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