type value = | Lit of string | Str of string | Lst of value list | Dim of float * string | Fn of string * value | Imp type prop = string * value type selector = string list type decl = | Group of selector list * prop list (* { } *) | Media of string list * decl list (* @media { } *) | Import of string * string list (* @import "" []; *) | Charset of string (* @charset ""; *) | Page of string option * prop list (* @page [] { } *) | Fontface of prop list (* @font-face { } *) | Namespace of string option * string (* @namespace [] ""; *) (* TODO: @document, @keyframes, @supports *) type args = { mutable infiles : string list; mutable outfile : string option; mutable verbose : int; } type loc = string * int * int * int * int exception LocError of loc * string