Package org.apache.felix.gogo.runtime
Class Tokenizer
- java.lang.Object
-
- org.apache.felix.gogo.runtime.Tokenizer
-
public class Tokenizer extends java.lang.Object
Bash-like tokenizer. Single and double quotes are just like Bash - single quotes escape everything (including backslashes), newlines are allowed in quotes. backslash-newline indicates a line continuation and is removed. Variable expansion is just like Bash: $NAME or ${NAME[[:][-+=?WORD]}, except it can yield any Object. Variables expanded within double-quotes, or adjacent to a String are converted to String. Unlike bash, indirect variable expansion is supported using ${$NAME}. Only a single variable assignment is recognized, with '=' being the second token. (Bash allows name1=value1 name2=value2 ... command args) Comments can only start where white space is allowed: # or // starts a line comment, /* starts a block comment. The following common uses do NOT start comments: ls http://example.com#anchor ls $dir/*.java
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Tokenizer.Type
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
expand(java.lang.CharSequence word, short line, short column)
static java.lang.Object
expand(java.lang.CharSequence word, Evaluate eval)
expand variables, quotes and escapes in word.Tokenizer.Type
next()
Token
token()
Tokenizer.Type
type()
java.lang.CharSequence
value()
-
-
-
Constructor Detail
-
Tokenizer
public Tokenizer(java.lang.CharSequence text)
-
Tokenizer
public Tokenizer(java.lang.CharSequence text, Evaluate evaluate, boolean inQuote)
-
-
Method Detail
-
type
public Tokenizer.Type type()
-
value
public java.lang.CharSequence value()
-
token
public Token token()
-
next
public Tokenizer.Type next()
-
expand
public static java.lang.Object expand(java.lang.CharSequence word, Evaluate eval) throws java.lang.Exception
expand variables, quotes and escapes in word.- Parameters:
vars
-- Returns:
- Throws:
java.lang.Exception
-
expand
public java.lang.Object expand(java.lang.CharSequence word, short line, short column) throws java.lang.Exception
- Throws:
java.lang.Exception
-
-