Make subcomposant in composant
This commit is contained in:
parent
958ab49552
commit
664e0134d8
1 changed files with 15 additions and 18 deletions
|
@ -118,8 +118,6 @@ public class ParserComposantGenerator {
|
||||||
comp.title = parent.title+"_"+bag.<Token>get().getValue();
|
comp.title = parent.title+"_"+bag.<Token>get().getValue();
|
||||||
parent.declare(bag.<Token>get().getValue(), comp.current);
|
parent.declare(bag.<Token>get().getValue(), comp.current);
|
||||||
|
|
||||||
System.out.println("+\t"+composant);
|
|
||||||
|
|
||||||
return comp;
|
return comp;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -150,14 +148,10 @@ public class ParserComposantGenerator {
|
||||||
StateTree<Element> op_childs = new StateTree<>();
|
StateTree<Element> op_childs = new StateTree<>();
|
||||||
op_childs.then((v) -> v.validate((t) -> t.getValue().equals("(")))
|
op_childs.then((v) -> v.validate((t) -> t.getValue().equals("(")))
|
||||||
.then(new RedirectStateTree<>(operations, (bag) -> {
|
.then(new RedirectStateTree<>(operations, (bag) -> {
|
||||||
System.out.println("Go on op_childs !");
|
|
||||||
return "operations";
|
return "operations";
|
||||||
}))
|
}))
|
||||||
.then((v) -> v.validate((t) -> t.getValue().equals(")")))
|
.then((v) -> v.validate((t) -> t.getValue().equals(")")))
|
||||||
.end((composant, bag) -> {
|
.end((composant, bag) -> {
|
||||||
System.out.println("");
|
|
||||||
System.out.println("\t"+composant);
|
|
||||||
System.out.println("\t"+bag);
|
|
||||||
return composant;
|
return composant;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -166,9 +160,11 @@ public class ParserComposantGenerator {
|
||||||
|
|
||||||
StateTree<Element> op_validator = operation.then(new RedirectStateTree<>(validator, (bag) -> "validator"));
|
StateTree<Element> op_validator = operation.then(new RedirectStateTree<>(validator, (bag) -> "validator"));
|
||||||
op_validator.<Element>end((composant, bag) -> {
|
op_validator.<Element>end((composant, bag) -> {
|
||||||
Element result = bag.<Bag>get("validator").<Element>get();
|
Validator result = bag.<Bag>get("validator").<Validator>get();
|
||||||
bag.set(result);
|
bag.set(result);
|
||||||
return new Composant();
|
Composant comp = new Composant();
|
||||||
|
result.composant = comp;
|
||||||
|
return comp;
|
||||||
}).then(op_childs);
|
}).then(op_childs);
|
||||||
op_validator.then(new RedirectStateTree<>(namedValidator, (bag) -> "namedValidator")).<Element>end((composant, bag) -> {
|
op_validator.then(new RedirectStateTree<>(namedValidator, (bag) -> "namedValidator")).<Element>end((composant, bag) -> {
|
||||||
NamedElement result = null;
|
NamedElement result = null;
|
||||||
|
@ -179,9 +175,11 @@ public class ParserComposantGenerator {
|
||||||
|
|
||||||
StateTree<Element> op_call = operation.then(new RedirectStateTree<>(methodCall, (bag) -> "methodCall"));
|
StateTree<Element> op_call = operation.then(new RedirectStateTree<>(methodCall, (bag) -> "methodCall"));
|
||||||
op_call.<Element>end((composant, bag) -> {
|
op_call.<Element>end((composant, bag) -> {
|
||||||
Element result = bag.<Bag>get("methodCall").<Element>get();
|
ComposantCall result = bag.<Bag>get("methodCall").<ComposantCall>get();
|
||||||
bag.set(result);
|
bag.set(result);
|
||||||
return new Composant();
|
Composant comp = new Composant();
|
||||||
|
result.composant = comp;
|
||||||
|
return comp;
|
||||||
}).then(op_childs);
|
}).then(op_childs);
|
||||||
op_call.then(new RedirectStateTree<>(namedValidator, (bag) -> "namedValidator")).<Element>end((composant, bag) -> {
|
op_call.then(new RedirectStateTree<>(namedValidator, (bag) -> "namedValidator")).<Element>end((composant, bag) -> {
|
||||||
NamedElement result = null;
|
NamedElement result = null;
|
||||||
|
@ -192,9 +190,11 @@ public class ParserComposantGenerator {
|
||||||
|
|
||||||
StateTree<Element> op_redirect = operation.then(new RedirectStateTree<>(redirection, (bag) -> "redirection"));
|
StateTree<Element> op_redirect = operation.then(new RedirectStateTree<>(redirection, (bag) -> "redirection"));
|
||||||
op_redirect.<Element>end((composant, bag) -> {
|
op_redirect.<Element>end((composant, bag) -> {
|
||||||
Element result = bag.<Bag>get("redirection").<Element>get();
|
Redirection result = bag.<Bag>get("redirection").<Redirection>get();
|
||||||
bag.set(result);
|
bag.set(result);
|
||||||
return new Composant();
|
Composant comp = new Composant();
|
||||||
|
result.composant = comp;
|
||||||
|
return comp;
|
||||||
}).then(op_childs);
|
}).then(op_childs);
|
||||||
op_redirect.then(new RedirectStateTree<>(namedValidator, (bag) -> "namedValidator")).<Element>end((composant, bag) -> {
|
op_redirect.then(new RedirectStateTree<>(namedValidator, (bag) -> "namedValidator")).<Element>end((composant, bag) -> {
|
||||||
NamedElement result = null;
|
NamedElement result = null;
|
||||||
|
@ -221,7 +221,6 @@ public class ParserComposantGenerator {
|
||||||
linked.elements.add(op.get());
|
linked.elements.add(op.get());
|
||||||
}
|
}
|
||||||
way.elements.add(linked);
|
way.elements.add(linked);
|
||||||
System.out.println(",\t"+way);
|
|
||||||
return composant;
|
return composant;
|
||||||
}).then(suit);
|
}).then(suit);
|
||||||
suit.then((v) -> v.validate((t) -> t.getValue().equals(";")))
|
suit.then((v) -> v.validate((t) -> t.getValue().equals(";")))
|
||||||
|
@ -237,7 +236,6 @@ public class ParserComposantGenerator {
|
||||||
}
|
}
|
||||||
way.elements.add(linked);
|
way.elements.add(linked);
|
||||||
((Composant)composant).include();
|
((Composant)composant).include();
|
||||||
System.out.println(";\t"+way);
|
|
||||||
return composant;
|
return composant;
|
||||||
}).then(suit);
|
}).then(suit);
|
||||||
suit.end((composant, bag) -> {
|
suit.end((composant, bag) -> {
|
||||||
|
@ -252,7 +250,6 @@ public class ParserComposantGenerator {
|
||||||
}
|
}
|
||||||
way.elements.add(linked);
|
way.elements.add(linked);
|
||||||
((Composant)composant).include();
|
((Composant)composant).include();
|
||||||
System.out.println("none\t"+way);
|
|
||||||
return composant;
|
return composant;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -414,7 +411,7 @@ public class ParserComposantGenerator {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString(){
|
public String toString(){
|
||||||
return action+((loop ? "*":""))+((end ? "=":""));
|
return action+((loop ? "*":""))+((end ? "=":""))+((composant == null || composant.path == null) ? "":"("+composant+")");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -455,7 +452,7 @@ public class ParserComposantGenerator {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString(){
|
public String toString(){
|
||||||
return target;
|
return target+((composant == null || composant.path == null) ? "":"("+composant+")");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -472,7 +469,7 @@ public class ParserComposantGenerator {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString(){
|
public String toString(){
|
||||||
return ":"+name;
|
return ":"+name+((composant == null || composant.path == null) ? "":"("+composant+")");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue