Commit Graph

  • 8acb535347 Remove TokenKind::Unit variant ConnorSkees 2020-01-22 00:54:03 -05:00
  • dc82d999e9 Lex % as symbol rather than unit ConnorSkees 2020-01-22 00:40:32 -05:00
  • 21515214cb Refactor interpolation eating ConnorSkees 2020-01-20 18:56:23 -05:00
  • efe056d3c7 Create AtRuleKind::Else variant ConnorSkees 2020-01-20 18:21:07 -05:00
  • a7ca888942 Parse styles not ending in semicolons ConnorSkees 2020-01-20 18:09:25 -05:00
  • 6242ff8417 Move file to let binding (and fix import tests) ConnorSkees 2020-01-20 17:01:47 -05:00
  • 296bc864fa Handle arbitrarily nested interpolation ConnorSkees 2020-01-20 17:01:25 -05:00
  • edb851c536 Make edition implicit ConnorSkees 2020-01-20 16:01:58 -05:00
  • f7b1ed79a7 Merge branch 'master' of https://github.com/ConnorSkees/grass ConnorSkees 2020-01-20 16:00:47 -05:00
  • d85f9d32f6 Make @import tests work ConnorSkees 2020-01-20 16:00:37 -05:00
  • 4bd99acfcd
    Add missing @import features Connor Skees 2020-01-20 15:14:38 -05:00
  • ba955c464a exclude the spec ConnorSkees 2020-01-20 13:44:12 -05:00
  • 75f38ba416 Move #[track_caller] behind feature gate ConnorSkees 2020-01-20 13:39:20 -05:00
  • 25b4bebdf8 Make everything private except StyleSheet ConnorSkees 2020-01-20 13:15:47 -05:00
  • c0e82ba0a8 Mention official test suite in readme ConnorSkees 2020-01-20 12:42:06 -05:00
  • 98d7c08af8 Add sass-spec as submodule ConnorSkees 2020-01-20 12:23:30 -05:00
  • 2efdf489ca clippy ConnorSkees 2020-01-20 12:17:07 -05:00
  • 1cd38f0317 Convert errors to strings for pretty printing ConnorSkees 2020-01-20 12:13:52 -05:00
  • 0824a019c2 Properly lex ?, |, \f, and = ConnorSkees 2020-01-20 11:39:05 -05:00
  • 37ad341f91 Add short version flag ConnorSkees 2020-01-20 11:09:05 -05:00
  • 058772edb4 Refactor into library and add argument parsing ConnorSkees 2020-01-20 11:00:01 -05:00
  • 58ffa5baac Add clap as dependency ConnorSkees 2020-01-20 10:59:29 -05:00
  • f23dec81ec Change return type and name of Mixin::from_tokens ConnorSkees 2020-01-20 09:39:06 -05:00
  • 6efb4141f6 Prefer match over if let ConnorSkees 2020-01-20 09:37:09 -05:00
  • 33244c34d7 Rename AtRule enum to AtRuleKind ConnorSkees 2020-01-20 08:36:06 -05:00
  • 3e3f08599b
    Create LICENSE Connor Skees 2020-01-19 23:04:48 -05:00
  • 6c67fa38ef Fix readme checkboxes ConnorSkees 2020-01-19 22:59:31 -05:00
  • 802be9de22 Add readme ConnorSkees 2020-01-19 22:58:25 -05:00
  • c64daceb20 Refactor conversion of SCSS to CSS ConnorSkees 2020-01-19 19:27:52 -05:00
  • 500b682739 Simplify handling of keyword arguments ConnorSkees 2020-01-19 12:10:35 -05:00
  • 1f1f43bf7c Implement keyword arguments in mixins ConnorSkees 2020-01-19 11:50:30 -05:00
  • 31506c7ce4 Add tests for default value arguments ConnorSkees 2020-01-19 11:28:26 -05:00
  • 1636d775c5 Implement default arguments in mixins ConnorSkees 2020-01-19 10:58:38 -05:00
  • 6da84575dc Prefer match over if let ConnorSkees 2020-01-19 10:41:44 -05:00
  • 28050116d3 Prefer match over if let ConnorSkees 2020-01-19 01:01:02 -05:00
  • 07cb3a4ac7 Remove clone from multiline comments ConnorSkees 2020-01-19 00:29:45 -05:00
  • 635f00baa6 Handle toplevel @debug, @warn, @error ConnorSkees 2020-01-19 00:10:37 -05:00
  • c35940b84e Refactor include parsing into src/mixin.rs ConnorSkees 2020-01-18 23:55:11 -05:00
  • 4420b4ab25 Simplify mixin scoping ConnorSkees 2020-01-18 21:15:09 -05:00
  • b25fe63e8e Further reduce usage of .clone() ConnorSkees 2020-01-18 21:05:26 -05:00
  • 720b1e9f22 Reduce usage of .clone() ConnorSkees 2020-01-18 20:24:28 -05:00
  • b28295d2b1 Refactor mixin parsing into mixin.rs ConnorSkees 2020-01-18 19:54:47 -05:00
  • 2f1113ead8 Tidy clippy allows ConnorSkees 2020-01-18 19:44:34 -05:00
  • 99dfcb6756 Use Self:: for matching ConnorSkees 2020-01-18 19:11:19 -05:00
  • 622ca8ceef Remove more instances of unwrap() ConnorSkees 2020-01-18 19:00:49 -05:00
  • d2ae3a4a0b Add cargo metadata ConnorSkees 2020-01-18 18:59:43 -05:00
  • bb10fad2b8 Tidy imports ConnorSkees 2020-01-18 18:36:00 -05:00
  • f3d21f1677 Parse files given path from stdin ConnorSkees 2020-01-18 18:12:53 -05:00
  • 0d9d1fc234 Properly interpolate all path variants ConnorSkees 2020-01-18 18:08:32 -05:00
  • 0485256115 Handle basic imports ConnorSkees 2020-01-18 15:47:51 -05:00
  • 9be0826d01 Refactor how StyleSheet is constructed ConnorSkees 2020-01-18 14:57:56 -05:00
  • fb33159996 Add tempfile as dev dependency ConnorSkees 2020-01-18 14:56:18 -05:00
  • afef31b808 Normalize units in selector ConnorSkees 2020-01-18 10:26:29 -05:00
  • 31d8017a01 rustfmt ConnorSkees 2020-01-18 09:52:21 -05:00
  • abdfa1b876 Handle interpolation in mixins ConnorSkees 2020-01-18 09:42:25 -05:00
  • ab8e98244f Handle positional arguments to mixins ConnorSkees 2020-01-18 09:03:38 -05:00
  • d1ea6d2dd6 Fix regression: empty style should not be treated as an error ConnorSkees 2020-01-18 08:51:47 -05:00
  • e15c88a3c7 rustfmt ConnorSkees 2020-01-17 22:40:13 -05:00
  • 8076125576 Propagate errors properly (reduce unwrap() calls) ConnorSkees 2020-01-17 21:42:51 -05:00
  • 02d6a511a5 remove extraneous clones ConnorSkees 2020-01-17 21:20:56 -05:00
  • 4114cc6f9d Add tests for variable scoping ConnorSkees 2020-01-17 21:15:38 -05:00
  • eaf1e8eb96 Consume whitespace after variable value ConnorSkees 2020-01-17 21:03:01 -05:00
  • cee40858ee Refactor function parsing into separate module ConnorSkees 2020-01-17 16:23:21 -05:00
  • 364480dc6f Add tests for nested rulesets in mixins ConnorSkees 2020-01-17 16:14:19 -05:00
  • b05301f442 MVP of mixin args ConnorSkees 2020-01-17 14:44:55 -05:00
  • e1191d7108 Properly consume mixin declarations and add tests for mixins ConnorSkees 2020-01-17 10:44:16 -05:00
  • d4f50c8acc Remove nesting check in ruleset parsing ConnorSkees 2020-01-17 10:43:03 -05:00
  • 5b631fb588 don't count chars in comment ConnorSkees 2020-01-17 10:38:59 -05:00
  • 64c6a35add Refactor to static functions rather than methods for reusability ConnorSkees 2020-01-17 08:14:10 -05:00
  • cbef775ef4 Consolidate tests to be on CSS output rather than internal representation ConnorSkees 2020-01-14 20:23:05 -05:00
  • e3968ac047 Refactor out variable eating ConnorSkees 2020-01-14 19:34:13 -05:00
  • 2389abaeed Remove unused SelectorKind variant ConnorSkees 2020-01-14 17:47:37 -05:00
  • c6fe179eeb Refactor and consolidate interpolation parsing ConnorSkees 2020-01-14 17:39:19 -05:00
  • cdbd4ff9a6 Considate variable dereferencing into util function ConnorSkees 2020-01-12 20:56:07 -05:00
  • 7d469625be rustfmt ConnorSkees 2020-01-12 20:55:24 -05:00
  • 4f99e60007 Commit mixin work ConnorSkees 2020-01-12 20:15:40 -05:00
  • 33843dd2ac Refactor various devour_whitespace methods into single util function ConnorSkees 2020-01-12 20:15:27 -05:00
  • 2439579d20 Initial implementation of @include and mixin eval ConnorSkees 2020-01-12 19:56:58 -05:00
  • 5e58cceae7 Clarify differences between [] and {} ConnorSkees 2020-01-12 19:56:33 -05:00
  • 107a7d996e Refactor how scope is handled and basic mixin parsing ConnorSkees 2020-01-12 17:44:49 -05:00
  • 9b4228f14c Add > and < ops ConnorSkees 2020-01-12 12:18:44 -05:00
  • bd4b38550c Handle interpolation inside selectors and styles ConnorSkees 2020-01-12 10:54:46 -05:00
  • 77d5c8ea2e Lex interpolations ConnorSkees 2020-01-12 10:52:51 -05:00
  • fd423ce300 Initial implementation of @debug and @warn ConnorSkees 2020-01-11 20:41:36 -05:00
  • 42d0fa657f Remove unused TokenKind variant ConnorSkees 2020-01-11 19:39:42 -05:00
  • 316156106a Move Color to separate file and implement fmt::UpperHex ConnorSkees 2020-01-11 19:33:21 -05:00
  • c73be13024 Handle pseudo selectors with arguments ConnorSkees 2020-01-11 19:16:59 -05:00
  • 6746ac1619 Add CSS & bem tests ConnorSkees 2020-01-11 18:43:42 -05:00
  • eccb02a426 Importer boilerplate ConnorSkees 2020-01-11 18:42:42 -05:00
  • d930659ffe Remove useless asserts ConnorSkees 2020-01-11 18:41:59 -05:00
  • d3620be4d8 Fix css rendering bug where nested styles would get eaten ConnorSkees 2020-01-11 17:24:50 -05:00
  • 97958b01a7 Implement & only inside selectors ConnorSkees 2020-01-11 16:12:23 -05:00
  • ebfeb35341 Refactor Selector to be Vec rather than recursive enum ConnorSkees 2020-01-11 14:51:31 -05:00
  • dc05c8db2d Handle several nested blocks ConnorSkees 2020-01-09 21:30:21 -05:00
  • 31b0ea6b34 Link to structs and enums in docs ConnorSkees 2020-01-09 20:56:09 -05:00
  • a74d22cce9 Document some internal enums and structs ConnorSkees 2020-01-08 20:58:02 -05:00
  • a3ecfbbf3e Preserve toplevel multiline comments and add tests for them ConnorSkees 2020-01-08 20:39:05 -05:00
  • 7611dce47a rustfmt and empty styles css tests ConnorSkees 2020-01-07 19:58:38 -05:00
  • fb877fa524 Preserve multiline comments in lexer ConnorSkees 2020-01-07 19:58:13 -05:00
  • bc32a5a143 Print file in error ConnorSkees 2020-01-07 19:24:37 -05:00