def getOrderBy(t): if len(t) == 4: gramatica = '<orderby> ::= \"ORDER\" \"BY\" <listaorderby>' childs = Nodo('LISTA', '', t[3], t.lexer.lineno) return Nodo('ORDERBY', '', [childs], t.lexer.lineno, 0, gramatica) else: gramatica = '<orderby> ::= \"ORDER\" \"BY\" <listaorderby> <instrlimit>' childs = [Nodo('LISTA', '', t[3], t.lexer.lineno)] childs.append(t[4]) return Nodo('ORDERBY', '', childs, t.lexer.lineno, 0, gramatica)
def getGroupby(t): if len(t) == 4: gramatica = '<groupby> ::= \"GROUP\" \"BY\" <listagroupby>' childs = Nodo('LISTA', '', t[3], t.lexer.lineno) return Nodo('GROUPBY', '', [childs], t.lexer.lineno, 0, gramatica) else: gramatica = '<groupby> ::= \"GROUP\" \"BY\" <listagroupby> \"HAVING\" <condicioneshaving>' childs = [Nodo('LISTA', '', t[3], t.lexer.lineno)] childs.append(Nodo('HAVING', '', [t[5]], t.lexer.lineno)) return Nodo('GROUPBY', '', childs, t.lexer.lineno, 0, gramatica)