commit | cd6daadb2b2c2d1efdedfa4d9b3fe2c5c4613b6b | [log] [tgz] |
---|---|---|
author | Leon Senft <leonsenft@google.com> | Mon May 08 13:46:39 2017 -0700 |
committer | Leon Senft <leonsenft@google.com> | Mon May 08 13:54:06 2017 -0700 |
tree | 03f6616e25dda3628f1fa6b8d6c1da7f32eba390 | |
parent | 21dc8cea7859df0b7f882b10b6a6effc86d71e8d [diff] |
Prevents exception for invalid dimension terms While running outside of checked mode, parsing an invalid term expression followed by a known dimension unit like width: Infinity%; caused the following exception to be thrown: The getter 'text' was called on null. Receiver: null Instead the parser now discards the invalid term, likely resulting in a useful error message indicating the source of failure such as error on ...: expected }, but found % width: Infinity%; ^ Fixes #43.
This is a CSS parser written entirely in Dart. It can be used in the client/server/command line.
This package is installed with Pub, see: install instructions for this package.
Parsing CSS is easy!
import 'package:csslib/parser.dart' show parse; import 'package:csslib/css.dart'; main() { var stylesheet = parse( '.foo { color: red; left: 20px; top: 20px; width: 100px; height:200px }'); print(stylesheet.toString()); }
You can pass a String or list of bytes to parse
.
Basic tests can be found in this repository:
pub run test
The full CSS test suite can be found in https://github.com/dart-lang/csslib-test-suite
cd ../csslib-test-suite ./run.sh