Make TreeNode.visit return dynamic.

Subclasses of TreeNode already do `visit(visitor) =>
visitor.visitSomething(this)`, this just exposes it at the root of the tree
hierarchy.  This is needed for package:html, where we have code that would do
the equivalent of `x = node.visit(myVisitor)`.

Review URL: .
3 files changed
tree: 89f683aa3322a9c5fdf0084e881e27dcb1379126
  1. bin/
  2. example/
  3. lib/
  4. test/
  5. .analysis_options
  6. .gitignore
  7. .test_config
  9. codereview.settings
  11. pubspec.yaml

CSS parser library for Dart

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 }');

You can pass a String or list of bytes to parse.

Running Tests

Basic tests can be found in this repository:

pub run test

The full CSS test suite can be found in

cd ../csslib-test-suite