#NEWLINE# def _tableconstructor( self ) : #NEWLINE# #INDENT# "Parse a tableconstructor.\n\n        tableconstructor ::= '{' [fieldlist] '}'\n\n\tfieldlist ::= field {fieldsep field} [fieldsep]\n\n\tfieldsep ::= ',' | ';'\n\n        Returns:\n          TableConstructor(fields)\n        " #NEWLINE# pos = self . _pos #NEWLINE# if ( self . _accept ( lexer . TokSymbol ( '{' ) ) is None ) : #NEWLINE# #INDENT# return None #NEWLINE# #UNINDENT# fields = [ ] #NEWLINE# field = self . _field ( ) #NEWLINE# if ( field is not None ) : #NEWLINE# #INDENT# fields . append ( field ) #NEWLINE# #UNINDENT# while ( ( self . _accept ( lexer . TokSymbol ( ',' ) ) is not None ) or ( self . _accept ( lexer . TokSymbol ( ';' ) ) is not None ) ) : #NEWLINE# #INDENT# field = self . _field ( ) #NEWLINE# if ( self is None ) : #NEWLINE# #INDENT# break #NEWLINE# #UNINDENT# fields . append ( field ) #NEWLINE# #UNINDENT# self . _expect ( lexer . TokSymbol ( '}' ) ) #NEWLINE# return TableConstructor ( fields , start = pos , end = self . _pos )