InnerClass definition like a lambda
This commit is contained in:
parent
fd47cf4f35
commit
ee5dc9501e
1 changed files with 16 additions and 8 deletions
|
@ -131,10 +131,17 @@ public class JavaParser extends Parser<JavaElement> {
|
||||||
type_array_end.then(type_array_end);
|
type_array_end.then(type_array_end);
|
||||||
type_array_end.then(type_generic_end);
|
type_array_end.then(type_generic_end);
|
||||||
|
|
||||||
|
StateTree<JavaElement> clazz_container = new StateTree<>();
|
||||||
|
|
||||||
//VALUE
|
//VALUE
|
||||||
StateTree<JavaElement> value = new StateTree<>();
|
StateTree<JavaElement> value = new StateTree<>();
|
||||||
value.then((validator) -> validator.validate((token) -> token.getValue().equals("new"))).then(value);
|
StateTree<JavaElement> value_instance = value.then((validator) -> validator.validate((token) -> token.getValue().equals("new")));
|
||||||
StateTree<JavaElement> value_name = value.then((validator) -> validator.validate(
|
StateTree<JavaElement> value_name = new StateTree<JavaElement>();
|
||||||
|
value.then(value_name);
|
||||||
|
value_instance = value_instance
|
||||||
|
.then(new RedirectStateTree<>(value_name, (global, local) -> {
|
||||||
|
}));
|
||||||
|
value_name = value_name.then((validator) -> validator.validate(
|
||||||
(token) -> token.getType().equals(TokenType.NAME),
|
(token) -> token.getType().equals(TokenType.NAME),
|
||||||
(bag, token) -> {
|
(bag, token) -> {
|
||||||
Token current = bag.get();
|
Token current = bag.get();
|
||||||
|
@ -143,6 +150,12 @@ public class JavaParser extends Parser<JavaElement> {
|
||||||
bag.set(current);
|
bag.set(current);
|
||||||
}));
|
}));
|
||||||
value_name.end((a,b) -> a);
|
value_name.end((a,b) -> a);
|
||||||
|
value_instance.end((a,b) -> a);
|
||||||
|
value_instance.then((validator) -> validator.validate((token) -> token.getValue().equals("{")))
|
||||||
|
.end((a,b) -> a)
|
||||||
|
.multiple(clazz_container);
|
||||||
|
|
||||||
|
|
||||||
StateTree<JavaElement> value_call = value_name.then((validator) -> validator.validate((token) -> token.getValue().equals(".")));
|
StateTree<JavaElement> value_call = value_name.then((validator) -> validator.validate((token) -> token.getValue().equals(".")));
|
||||||
value_call.then(value_name);
|
value_call.then(value_name);
|
||||||
StateTree<JavaElement> value_arg_begin = value_name.then((validator) -> validator.validate((token) -> token.getValue().equals("(")));
|
StateTree<JavaElement> value_arg_begin = value_name.then((validator) -> validator.validate((token) -> token.getValue().equals("(")));
|
||||||
|
@ -307,13 +320,8 @@ public class JavaParser extends Parser<JavaElement> {
|
||||||
function_arg_name.then(function_end);
|
function_arg_name.then(function_end);
|
||||||
|
|
||||||
|
|
||||||
StateTree<JavaElement> clazz_container = new StateTree<>();
|
|
||||||
clazz_container.then(variable);
|
clazz_container.then(variable);
|
||||||
clazz_container.then(function);
|
clazz_container.then(function);
|
||||||
clazz_container.then((v) -> v.validate((t)->{
|
|
||||||
System.out.println(t);
|
|
||||||
return false;
|
|
||||||
}));
|
|
||||||
|
|
||||||
//CLASS
|
//CLASS
|
||||||
StateTree<JavaElement> clazz_ = new StateTree<>();
|
StateTree<JavaElement> clazz_ = new StateTree<>();
|
||||||
|
|
Loading…
Add table
Reference in a new issue