Pok-7-wyk-Slajd34

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania

LLgen – implementacja atrybutów(1)

LLgen – implementacja atrybutów(1)


Generator LLgen nie nakłada własnych, dodatkowych ograniczeń na liczbę i typ atrybutów ponad te, które wynikają z użycia języka C.

Atrybuty i zmienne lokalne deklarowane są w produkcji, w której dany nieterminal znajduje się po lewej stronie (jest tylko jedna taka produkcja dla każdego nieterminala, ponieważ w LLgenie alternatywne prawe strony muszą być zapisywane po znaku ‘|’).

Atrybuty definiujemy zaraz po nazwie symbolu, w nawiasach okrągłych, rozdzielając je średnikami, średnik po ostatnim atrybucie jest opcjonalny. Zmienne lokalne deklarujemy po nazwie symbolu i atrybutach – w nawiasach klamrowych.

Użycie atrybutów w LLgenie zostanie pokazane na tych samych przykładach, które były wykorzystane wcześniej, przy implementacji analizatorów w języku C. Pozwoli to na porównanie o ile wykorzystanie generatora pozwala uprościć implementację translatora.

Nie zostaną omówione zasady obsługi błędów, analiza jaką trzeba przeprowadzić jest dokładnie taka sama, jak w przypadku implementacji w języku C, a implementacja funkcji LLmessage służącej do obsługi błędów została omówiona w wykładzie poświęconym podstawom generatora LLgen.


<< Poprzedni slajd | Spis treści | Następny slajd >>