A_it = _track_A_list.iterator();
while (A_it.hasNext()) {
kids.add(_adaptor.create(A_it.next()));
}
_localctx.tree = _adaptor.create(root, kids); // ^(nil A A ... A)
B A+ -> ^(B A*)
Code Block
A_it = _track_A_list.iterator();
B_it = _track_B_list.iterator();
root = _adaptor.create(B_it.next());
while (A_it.hasNext()) {
kids.add(_adaptor.create(A_it.next()));
}
_localctx.tree = _adaptor.create(_adaptor.create(root), kids); // ^(B A A ... A)
A+ -> ^(B A)*
Code Block
A_it = _track_A_list.iterator();
root_1 = null;
while (A_it.hasNext()) {
root_1 = _adaptor.create(_adaptor.create(B, "B")); // imaginary B root
kids_1.add(_adaptor.create(A_it.next()));
kids.add( _adaptor.create(root_1_adaptor.create(B, "B"), kids_1) ); // ^(B A)
}
_localctx.tree = _adaptor.create(root, kids); // ^(nil ^(B A) ^(B A) ...)