package css-parser

  1. Overview
  2. Docs
A CSS parser written in OCaml

Install

Dune Dependency

Authors

Maintainers

Sources

v0.2.3.tar.gz
sha256=fe81c0f607feb68cc9e80c8a82edf205c0f18ed8be21a0dcc1b6aa10153cbc13
md5=bb422eaf04d524fda80a5a50ab0466f3

README.md.html

ocaml-css-parser

A CSS parser written in OCaml.

Parses a CSS string and produces an AST.

Build

npm install -g esy
esy
# to build and run tests
esy dune runtest

Example

let css =
{|
  {
    color: red !important;
    width: 100%;
  }
|} in
  let ast = Css.Parser.parse_stylesheet css in
  (* ast is a value of type Css.Stylesheet.t defined in lib/types.mli *)
  (* that looks like that:
    ([Rule.Style_rule
        {Style_rule.prelude = ([], Location.none);
         block =
           ([Declaration_list.Declaration
               {Declaration.name = ("color", Location.none);
                  value = ([(Component_value.Ident "blue", Location.none)], Location.none);
                  important = (true, Location.none);
                  loc = Location.none;
                 };
               {Declaration.name = ("width", Location.none);
                  value = ([(Component_value.Percentage "100", Location.none)], Location.none);
                  important = (false, Location.none);
                  loc = Location.none;
                };
            ], Location.none);
         loc = Location.none;
        };
     ], Location.none)
  *)
OCaml

Innovation. Community. Security.