CrossClj

1.4.9 docs

SourceDocs



RECENT
    VARS
    *case-insensitive-literals*
    build-parser
    build-parser-from-combinators
    build-rule
    cfg
    check-grammar
    content
    contents
    double-quoted-regexp
    double-quoted-string
    ebnf
    escape
    inside-comment
    opt-whitespace
    process-regexp
    process-string
    regex-doc
    safe-read-string
    seq-nt
    single-quoted-regexp
    single-quoted-string
    tag
    wrap-reader
    ws

    « Index of all namespaces of this project

    This is the context free grammar that recognizes context free grammars.
    
    Dynamic
    When true all string literal terminals in built grammar will be treated as case insensitive
    
    (build-parser spec output-format)
    (build-parser-from-combinators grammar-map output-format start-production)
    (build-rule tree)
    Convert one parsed rule from the grammar into combinators
    
    (check-grammar grammar-map)
    Throw error if grammar uses any invalid non-terminals in its productions
    
    (ebnf spec)
    Takes an EBNF grammar specification string and returns the combinator version.
    If you give it the right-hand side of a rule, it will return the combinator equivalent.
    If you give it a series of rules, it will give you back a grammar map.   
    Useful for combining with other combinators.
    (escape s)
    Converts escaped single-quotes to unescaped, and unescaped double-quotes to escaped
    
    (process-regexp s)
    Converts single quoted regexp to double-quoted
    
    (process-string s)
    Converts single quoted string to double-quoted
    
    (regex-doc pattern-str comment)
    Adds a comment to a Clojure regex, or no-op in ClojureScript
    
    (safe-read-string s)
    Expects a double-quote at the end of the string
    
    (seq-nt parser)
    Returns a sequence of all non-terminals in a parser built from combinators.
    
    (wrap-reader reader)