Example #1
0
 def visitFullColumnName(self, ctx: evaql_parser.FullColumnNameContext):
     # dotted id not supported yet
     column_name = self.visit(ctx.uid())
     if column_name is not None:
         return TupleValueExpression(col_name=column_name)
     else:
         warnings.warn("Column Name Missing", SyntaxWarning)
Example #2
0
    def visitFullColumnName(self, ctx: evaql_parser.FullColumnNameContext):
        # Adding support for a.b
        # Will restrict implementation to raise error for a.b.c
        dottedIds = []
        if ctx.dottedId():
            if len(ctx.dottedId()) != 1:
                LoggingManager().log("Only tablename.colname syntax supported",
                                     LoggingLevel.ERROR)
                return
            for id in ctx.dottedId():
                dottedIds.append(self.visit(id))

        uid = self.visit(ctx.uid())

        if len(dottedIds):
            return TupleValueExpression(table_name=uid, col_name=dottedIds[0])
        else:
            return TupleValueExpression(col_name=uid)