MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / DsqlAliasNode

Class DsqlAliasNode

src/dsql/ExprNodes.h:979–1029  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

977
978
979class DsqlAliasNode final : public TypedNode<ValueExprNode, ExprNode::TYPE_ALIAS>
980{
981public:
982 DsqlAliasNode(MemoryPool& pool, const MetaName& aName, ValueExprNode* aValue)
983 : TypedNode<ValueExprNode, ExprNode::TYPE_ALIAS>(pool),
984 name(aName),
985 value(aValue),
986 implicitJoin(NULL)
987 {
988 }
989
990 virtual void getChildren(NodeRefsHolder& holder, bool dsql) const
991 {
992 ValueExprNode::getChildren(holder, dsql);
993 holder.add(value);
994 }
995
996 virtual Firebird::string internalPrint(NodePrinter& printer) const;
997 virtual ValueExprNode* dsqlPass(DsqlCompilerScratch* dsqlScratch);
998
999 virtual void setParameterName(dsql_par* parameter) const;
1000 virtual void genBlr(DsqlCompilerScratch* dsqlScratch);
1001 virtual void make(DsqlCompilerScratch* dsqlScratch, dsc* desc);
1002
1003 void setDsqlDesc(const dsc& desc)
1004 {
1005 dsqlDesc = desc;
1006 }
1007
1008 virtual void getDesc(thread_db* /*tdbb*/, CompilerScratch* /*csb*/, dsc* /*desc*/)
1009 {
1010 fb_assert(false);
1011 }
1012
1013 virtual ValueExprNode* copy(thread_db* /*tdbb*/, NodeCopier& /*copier*/) const
1014 {
1015 fb_assert(false);
1016 return NULL;
1017 }
1018
1019 virtual dsc* execute(thread_db* /*tdbb*/, Request* /*request*/) const
1020 {
1021 fb_assert(false);
1022 return NULL;
1023 }
1024
1025public:
1026 const MetaName name;
1027 NestConst<ValueExprNode> value;
1028 NestConst<ImplicitJoin> implicitJoin;
1029};
1030
1031
1032class DsqlMapNode final : public TypedNode<ValueExprNode, ExprNode::TYPE_MAP>

Callers 3

dsqlPassMethod · 0.85
pass1_union_auto_castFunction · 0.85
dsqlPassMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected