[so] Arbore
Catalin Iacob
iacobcatalin at gmail.com
Mon Oct 29 13:31:25 EET 2007
On Monday 29 October 2007 11:13:12 Sturzu Antonio Gabriel wrote:
> Intrebare:
> Prioritatea operatorilor e chiar cea care apare in
> arborele sintactic?Ar fi logic sa fie asa.
Nu prea inteleg ce vrei sa spui.
In enuntul temei se spune care e prioritatea operatorilor. Arborele e
construit de parser incat sa tina cont de prioritatea din enunt.
Exemplu.
Daca scriu A && B | C, faptul ca | are prioritate mai mare decat && inseamna
ca respectiva comanda trebuie executata ca si cum ar fi A && (B | C), adica:
execut A si daca A are ca rezultat un cod de eroare 0 execut B si C cu
output-ul lui B redirectat ca input al lui C. Arborele va fi cu && in
radacina, copil stanga A, copil dreapta nod de tip | cu B si C drept copii.
Si asta reflecta corect prioritatea din enunt.
In comentariile din parser.h exista urmatoarea fraza care s-ar putea sa fie
importanta pentru modul in care va ganditi parcurgerea arborelui.
" The parsed expressions do not contain parantheses, this means that
the following holds:
for any op_lower that has a lower priority than op, there is no
parent in the tree with op == op_lower
In particular, if op == OP_PIPE descendants
can only have OP_PIPE or OP_NONE
"
Daca nu am raspuns la ceea ce voiai tu te rog revino cu intrebarea mai clar
formulata.
More information about the so
mailing list