Search in sources :

Example 1 with Lexer

use of net.sourceforge.processdash.util.glob.lexer.Lexer in project processdash by dtuma.

the class GlobEngine method compile.

private static Start compile(String expression) {
    Start result = (Start) COMPILED_EXPRESSIONS.get(expression);
    if (result == null) {
        try {
            Parser p = new Parser(new Lexer(new PushbackReader(new StringReader(expression), 1024)));
            // Parse the input
            result = p.parse();
        } catch (Exception e) {
            logger.warning("Invalid glob expression: " + expression);
            e.printStackTrace();
        }
    }
    return result;
}
Also used : Lexer(net.sourceforge.processdash.util.glob.lexer.Lexer) Start(net.sourceforge.processdash.util.glob.node.Start) StringReader(java.io.StringReader) Parser(net.sourceforge.processdash.util.glob.parser.Parser) PushbackReader(java.io.PushbackReader)

Aggregations

PushbackReader (java.io.PushbackReader)1 StringReader (java.io.StringReader)1 Lexer (net.sourceforge.processdash.util.glob.lexer.Lexer)1 Start (net.sourceforge.processdash.util.glob.node.Start)1 Parser (net.sourceforge.processdash.util.glob.parser.Parser)1