Boş olmayan, bir veya birçok öğe, virgül kullanarak virgülle ayrılmış (ve isteğe bağlı olarak parantezli) bir listeyi ayrıştırmak istiyorum bizon ayrıştırma kuralları. Bazı örn. ayrıştırılabilir listelerinin:virgülle ayrılmış bir bağımsız değişken listesi ayrıştırmak için flex/bison kurallarının nasıl ayarlanacağı
- 1,2
- (1,2)
- (3)
- 3,4,5
- (3,4,5,6)
vb
ben ayrıştırmak için aşağıdaki kuralları kullanıyorumliste (son sonuç ayrıştırma elemanı 'üst düzey listesi'), ancak ayrıştırma sırasında istenen sonucu vermezler (geçerli bir liste verirken bir sözdizimi hatası alıyorum). Bunu nasıl kurabileceğime dair bir önerin var mı?
cList : ELEMENT
{
...
}
| cList COMMA ELEMENT
{
...
}
;
topLevelList : LPAREN cList RPAREN
{
...
}
| cList
{
...
}
;
Neden bir simge belirtin? – EJP