String Value
This commit is contained in:
parent
8931ef971a
commit
2f8478d348
1 changed files with 21 additions and 7 deletions
|
@ -101,12 +101,25 @@ public class JavaParser extends Parser<JavaFile> {
|
|||
Function<TokenValidator, Boolean> LAMBDA_19 = (v) -> v.validate((t) -> t.getValue().equals("|"), (bag, t) -> bag.set("type", t));
|
||||
Function<TokenValidator, Boolean> LAMBDA_20 = (v) -> v.validate((t) -> t.getValue().equals("^"), (bag, t) -> bag.set("type", t));
|
||||
Function<TokenValidator, Boolean> LAMBDA_21 = (v) -> v.validate((t) -> t.getValue().equals("%"), (bag, t) -> bag.set("type", t));
|
||||
Function<TokenValidator, Boolean> LAMBDA_23 = (v) -> v.validate((t) -> t.getValue().equals("("), (bag, t) -> bag.set("type", t));
|
||||
Function<TokenValidator, Boolean> LAMBDA_24 = (v) -> v.validate((t) -> t.getValue().equals(")"), (bag, t) -> bag.set("type", t));
|
||||
Function<TokenValidator, Boolean> LAMBDA_23 = (v) -> v.validate((t) -> t.getValue().equals("("));
|
||||
Function<TokenValidator, Boolean> LAMBDA_24 = (v) -> v.validate((t) -> t.getValue().equals(")"));
|
||||
Function<TokenValidator, Boolean> LAMBDA_25 = (v) -> v.validate((t) -> t.getValue().equals("."), (bag, t) -> bag.set("type", t));
|
||||
Function<TokenValidator, Boolean> LAMBDA_26 = (v) -> v.validate((t) -> t.getValue().equals("\""), (bag, t) -> bag.set("type", t));
|
||||
Function<TokenValidator, Boolean> LAMBDA_27 = (v) -> v.validate((t) -> !t.getValue().equals("\""), (bag, t) -> bag.set("type", t));
|
||||
Function<TokenValidator, Boolean> LAMBDA_28 = (v) -> v.validate((t) -> t.getValue().equals("'"), (bag, t) -> bag.set("type", t));
|
||||
Function<TokenValidator, Boolean> LAMBDA_26 = (v) -> v.validate((t) -> t.getValue().equals("\""), (bag, t) -> {
|
||||
Bag sub = bag.get("?");
|
||||
if(sub == null) return;
|
||||
sub.set(new Value(sub.get()));
|
||||
});
|
||||
Function<TokenValidator, Boolean> LAMBDA_27 = (v) -> v.validate((t) -> !t.getValue().equals("\""), (bag,t) -> {
|
||||
Bag sub = bag.get("?");
|
||||
if(sub == null){
|
||||
sub = new Bag();
|
||||
bag.set("?", sub);
|
||||
sub.set(t);
|
||||
return;
|
||||
}
|
||||
sub.set(sub.<Token>get().concat(t));
|
||||
});
|
||||
Function<TokenValidator, Boolean> LAMBDA_28 = (v) -> v.validate((t) -> t.getValue().equals("'"));
|
||||
Function<TokenValidator, Boolean> LAMBDA_29 = (v) -> v.validate((t) -> t.getValue().equals("oneChar"));
|
||||
Function<TokenValidator, Boolean> LAMBDA_30 = (v) -> v.validate((t) -> t.getValue().equals("if"));
|
||||
Function<TokenValidator, Boolean> LAMBDA_31 = (v) -> v.validate((t) -> t.getValue().equals("for"));
|
||||
|
@ -130,11 +143,12 @@ public class JavaParser extends Parser<JavaFile> {
|
|||
|
||||
System.out.println("----");
|
||||
//(ab = (cd & 34))
|
||||
tokenizer.getTokens().addAll(build("(","ab","=","(","cd","&","34",")",")"));
|
||||
// tokenizer.getTokens().addAll(build("(","ab","=","(","cd","&","34",")",")"));
|
||||
// tokenizer.getTokens().addAll(build("(","ab","=","(","cd","&","(","ay","/","34",")",")",")"));
|
||||
// tokenizer.getTokens().addAll(build("(","ab","=","cd",")"));
|
||||
// tokenizer.getTokens().addAll(build("(","ab",")"));
|
||||
// tokenizer.getTokens().addAll(build("ab","=","cd","/","ef"));
|
||||
tokenizer.getTokens().addAll(build("\"","You","Have","\"","+","78","+","\"","ms","\""));
|
||||
value_q0.seed(tokenizer, null);
|
||||
System.out.println("----");
|
||||
|
||||
|
@ -307,7 +321,7 @@ public class JavaParser extends Parser<JavaFile> {
|
|||
StateTree<JavaElement> value_q11 = value_q1.then(LAMBDA_25);
|
||||
value_q11.then(value_q1);
|
||||
value_q0.then(LAMBDA_23).then(new RedirectStateTree<>(value_q0,(bag) -> "?")).then(LAMBDA_24).<JavaElement>end(END_NATIVE_VALUE).then(value_q22);
|
||||
value_q0.then(LAMBDA_26).then(LAMBDA_27).then(LAMBDA_26).<JavaElement>end(END_NATIVE_VALUE).then(value_q22);
|
||||
value_q0.then(LAMBDA_26).then(LAMBDA_27).loop().then(LAMBDA_26).<JavaElement>end(END_NATIVE_VALUE).then(value_q22);
|
||||
value_q0.then(LAMBDA_28).then(LAMBDA_29).then(LAMBDA_28).<JavaElement>end(END_NATIVE_VALUE).then(value_q22);
|
||||
return value_q0;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue