Package org.apache.felix.gogo.runtime
Class Tokenizer
- java.lang.Object
-
- org.apache.felix.gogo.runtime.Tokenizer
-
public class Tokenizer extends java.lang.ObjectBash-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 classTokenizer.Type
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Objectexpand(java.lang.CharSequence word, short line, short column)static java.lang.Objectexpand(java.lang.CharSequence word, Evaluate eval)expand variables, quotes and escapes in word.Tokenizer.Typenext()Tokentoken()Tokenizer.Typetype()java.lang.CharSequencevalue()
-
-
-
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.Exceptionexpand 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
-
-