Commit Graph

  • 76b2685894 Lex and parse named colors ConnorSkees 2020-02-07 00:10:43 -05:00
  • d9339a68b5 Refactor colors ConnorSkees 2020-02-03 16:44:07 -05:00
  • 6607101d4d Implement Add for more types ConnorSkees 2020-02-03 15:36:11 -05:00
  • ed44f125f7 Add builtin function inspect() ConnorSkees 2020-02-03 15:18:12 -05:00
  • f0185855c0 Add more feature-exists tests for unimplemented features ConnorSkees 2020-02-03 15:08:14 -05:00
  • ed316e6eb7 2020-02-03 readme ConnorSkees 2020-02-03 08:49:47 -05:00
  • 816688cb84 Implement unitless builtin function ConnorSkees 2020-02-03 08:10:55 -05:00
  • 901bdcae3b Implement type-of builtin function ConnorSkees 2020-02-03 07:56:21 -05:00
  • c92781a20e Add unit function ConnorSkees 2020-02-03 07:35:04 -05:00
  • e57a189c77 Handle quotes in feature-exists ConnorSkees 2020-02-03 07:27:57 -05:00
  • f82f1f3eee Add feature-exists() builtin function ConnorSkees 2020-02-03 07:22:20 -05:00
  • 8eb9620a1a Refactor builtin function declaration ConnorSkees 2020-02-03 07:11:35 -05:00
  • efc62a2433 Add if() function ConnorSkees 2020-02-02 22:33:04 -05:00
  • 6faebf5105 HACK: parse interpolations into values then tokens ConnorSkees 2020-02-02 21:11:22 -05:00
  • c7f34f573f newlines in builtin files ConnorSkees 2020-02-02 21:09:29 -05:00
  • 1c4ad8a7fa Builtin function boilerplate ConnorSkees 2020-02-02 18:05:36 -05:00
  • 4263fd2532 Devour whitespace after { ConnorSkees 2020-02-02 18:01:09 -05:00
  • 231252a9d9 Remove redundant tests ConnorSkees 2020-02-02 17:44:39 -05:00
  • 9c97c734ef Strip whitespace inside pseudo paren selectors ConnorSkees 2020-02-02 15:21:47 -05:00
  • ee44982198 Handle pseudo elements like ::before ConnorSkees 2020-02-02 15:06:46 -05:00
  • 89060a0e83 Implement ident substraction ConnorSkees 2020-02-02 14:46:58 -05:00
  • ffff80109b Implement ident addition ConnorSkees 2020-02-02 11:17:23 -05:00
  • 6bc96aeff4 clippy and rustfmt ConnorSkees 2020-02-02 10:27:08 -05:00
  • bad318aae8 Handle no space between colon when also missing semicolon ConnorSkees 2020-02-01 23:22:36 -05:00
  • b8bacbde8b Refactor tests into separate files ConnorSkees 2020-02-01 23:09:22 -05:00
  • ea03f71928 Refactor style parsing ConnorSkees 2020-02-01 21:59:23 -05:00
  • 3b3de2d83b Cleanups to make compiler happy ConnorSkees 2020-02-01 19:39:20 -05:00
  • 8e42d73c1e Initial implementation of nested styles ConnorSkees 2020-02-01 19:33:56 -05:00
  • b1d887ee3d rustfmt ConnorSkees 2020-02-01 19:25:44 -05:00
  • 3f929066c4 Rename eat_interpolation() to parse_interpolation() ConnorSkees 2020-02-01 19:24:37 -05:00
  • 06be720f49 Tests for nested selector combinators ConnorSkees 2020-02-01 11:31:49 -05:00
  • 3699f987c8 Print 2 newlines between unrelated styles ConnorSkees 2020-01-29 21:25:07 -05:00
  • 304c7b7489 Move cfg(test) to toplevel ConnorSkees 2020-01-29 21:05:03 -05:00
  • d464124ae0 Handle !default ConnorSkees 2020-01-29 21:02:32 -05:00
  • 849cddeea4 Parse (but do not remove) placeholder selectors ConnorSkees 2020-01-29 20:02:02 -05:00
  • c43aa18e06 Media query boilerplate ConnorSkees 2020-01-29 20:01:41 -05:00
  • f774bce5be We are passing more tests! ConnorSkees 2020-01-27 20:24:22 -05:00
  • ae708091a6 Allow numbers in variable names ConnorSkees 2020-01-27 17:21:18 -05:00
  • 7975d468f1 Remove quotes from interpolation (naively) ConnorSkees 2020-01-27 17:15:02 -05:00
  • 1c5c8e0650 Update README for 2020-01-27 test results ConnorSkees 2020-01-27 16:57:12 -05:00
  • 889488121a Remove extra commas in selectors ConnorSkees 2020-01-26 19:16:26 -05:00
  • 15edae53d6 Lex attributes in a much more robust way :) ConnorSkees 2020-01-26 19:07:24 -05:00
  • c7efbc7e05 Properly interpolate values coming from variables ConnorSkees 2020-01-26 18:43:07 -05:00
  • 1761af0a01 Handle toplevel @include ConnorSkees 2020-01-26 17:28:39 -05:00
  • 934f9d860d Handle comments between selectors ConnorSkees 2020-01-26 16:55:06 -05:00
  • a8ebc91702 Normalize newlines in comments ConnorSkees 2020-01-26 16:50:08 -05:00
  • f3787ef305 Escape double quotes ConnorSkees 2020-01-26 16:28:38 -05:00
  • 7fa0ee885e Refactor QuoteKind to common.rs ConnorSkees 2020-01-26 16:23:37 -05:00
  • 8b26fabb62 Work on builtin functions ConnorSkees 2020-01-26 15:28:39 -05:00
  • 52c9905b14 Basic implementation of @charset ConnorSkees 2020-01-26 15:27:38 -05:00
  • 357647b19c rustfmt ConnorSkees 2020-01-26 15:26:45 -05:00
  • 1aa4e6ced2 More Value ops ConnorSkees 2020-01-26 15:04:16 -05:00
  • e2a487a59b Handle comments inside call args ConnorSkees 2020-01-26 13:53:18 -05:00
  • 05eb03a38b Properly handle calling mixin with empty args ConnorSkees 2020-01-26 13:52:47 -05:00
  • 620e33f541 dbg! on unexpected toplevel token ConnorSkees 2020-01-26 13:50:19 -05:00
  • 8756adaaaf Truncate keywords (some of them probably shouldn't be keywords) ConnorSkees 2020-01-26 12:34:04 -05:00
  • 7e5214d629 Handle keywords in Value ConnorSkees 2020-01-26 12:28:12 -05:00
  • 63dd66f0f7 Handle arbitrary attribute modifiers (kinda) ConnorSkees 2020-01-26 12:23:21 -05:00
  • c183ea8c1e Test for returning variable in function and calling functions with variables as parameter ConnorSkees 2020-01-26 11:47:46 -05:00
  • 65030eb7ea Handle uppercase I in attribute selectors ConnorSkees 2020-01-26 11:47:00 -05:00
  • 3e45f05d97 Handle whitespace with interpolated super selector ConnorSkees 2020-01-26 11:17:48 -05:00
  • 4e6ae91825 Handle interpolated super selectors ConnorSkees 2020-01-26 11:07:57 -05:00
  • 4fdd1ce69a Add error message for toplevel & ConnorSkees 2020-01-26 10:53:52 -05:00
  • 6c41d7722b @at-rule has a hyphen ConnorSkees 2020-01-26 10:53:26 -05:00
  • 43c7914622 Don't fail on empty callargs ConnorSkees 2020-01-26 10:52:43 -05:00
  • 43866eb142 Refactor interpolation ConnorSkees 2020-01-26 09:28:44 -05:00
  • 709ed5c6b5 Handle variables as parameters to function calls ConnorSkees 2020-01-26 09:13:39 -05:00
  • 4cbbff259c Implement basic builtin functions ConnorSkees 2020-01-25 23:33:45 -05:00
  • 16d7dec4cc Fix error message ConnorSkees 2020-01-25 21:07:02 -05:00
  • bab22edbe1 Implement basic function calling ConnorSkees 2020-01-25 21:02:22 -05:00
  • e0026d5e11 Add basic tests for functions ConnorSkees 2020-01-25 20:59:16 -05:00
  • 199d108213 rustfmt ConnorSkees 2020-01-25 20:58:52 -05:00
  • 5295d18f02 Create module for builtin functions ConnorSkees 2020-01-25 20:58:30 -05:00
  • 9af3670d16 Handle function calls inside Value ConnorSkees 2020-01-25 20:56:44 -05:00
  • 93497ed4a8 Store Vec<Token> inside @return rather than Value ConnorSkees 2020-01-25 20:55:44 -05:00
  • 47ef4c1cda rustfmt ConnorSkees 2020-01-25 20:53:51 -05:00
  • fcb1a71557 Test for empty mixins ConnorSkees 2020-01-25 18:42:49 -05:00
  • abaa7724c0 Add lazy_static as dependency ConnorSkees 2020-01-25 18:40:46 -05:00
  • bb22fb3464 Handle trailing semicolons in Value ConnorSkees 2020-01-25 14:11:32 -05:00
  • ddb5b6f32a Make function body a list of AtRule rather than token ConnorSkees 2020-01-25 14:11:04 -05:00
  • cdd0ccca16 Refactor AtRule parsing and parse @return ConnorSkees 2020-01-25 13:49:25 -05:00
  • a3c668ae83 Refactor ConnorSkees 2020-01-25 13:25:38 -05:00
  • b0e1826449 Very basic @function implementation ConnorSkees 2020-01-25 13:20:21 -05:00
  • d4e99051c7 Derive Debug and Clone for AtRule ConnorSkees 2020-01-25 13:19:32 -05:00
  • b482a26934 Refactor AtRule parsing ConnorSkees 2020-01-25 13:07:55 -05:00
  • 225526a239 Create AtRule struct ConnorSkees 2020-01-25 13:05:40 -05:00
  • 6271da50eb Add functions to scope ConnorSkees 2020-01-25 12:47:38 -05:00
  • fd951dca26 Make arg parsing agnostic to use ConnorSkees 2020-01-25 12:46:51 -05:00
  • 53988b377c Refactor AtRuleKind into separate file ConnorSkees 2020-01-25 12:43:07 -05:00
  • 59cead8ebd Refactor tests into separate directory ConnorSkees 2020-01-25 11:06:49 -05:00
  • a61ac3fca3 Refactor arg parsing to separate file ConnorSkees 2020-01-25 11:00:29 -05:00
  • bd73b1ba3e Handle more binary ops ConnorSkees 2020-01-25 10:54:25 -05:00
  • 7fe9da3d2c Initial implementation of parens in Value ConnorSkees 2020-01-25 10:11:46 -05:00
  • 05503b3a16 Tidy comment whitespace ConnorSkees 2020-01-25 10:11:26 -05:00
  • 9503b3288b Initial implementation of Value ConnorSkees 2020-01-25 09:58:53 -05:00
  • 4fe74ecf51 Don't run doctests and temporarily disable hyphen concat test ConnorSkees 2020-01-25 09:57:44 -05:00
  • b0447ddc69 Add + - * / % ops ConnorSkees 2020-01-25 09:56:27 -05:00
  • 30cac02f9c Add IsComment trait and devour_comment utils ConnorSkees 2020-01-25 09:54:38 -05:00
  • 87bf73aa47 Derive Eq and PartialEq for Color ConnorSkees 2020-01-22 02:16:12 -05:00
  • 54aca3b84e Properly handle unknown units ConnorSkees 2020-01-22 00:54:43 -05:00