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

Class InternalInfoNode

src/dsql/ExprNodes.h:901–935  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

899
900
901class InternalInfoNode final : public TypedNode<ValueExprNode, ExprNode::TYPE_INTERNAL_INFO>
902{
903public:
904 struct InfoAttr
905 {
906 const char* alias;
907 unsigned mask;
908 };
909
910 static const InfoAttr INFO_TYPE_ATTRIBUTES[MAX_INFO_TYPE];
911
912 explicit InternalInfoNode(MemoryPool& pool, ValueExprNode* aArg = NULL);
913
914 static DmlNode* parse(thread_db* tdbb, MemoryPool& pool, CompilerScratch* csb, const UCHAR blrOp);
915
916 virtual void getChildren(NodeRefsHolder& holder, bool dsql) const
917 {
918 ValueExprNode::getChildren(holder, dsql);
919 holder.add(arg);
920 }
921
922 virtual Firebird::string internalPrint(NodePrinter& printer) const;
923 virtual ValueExprNode* dsqlPass(DsqlCompilerScratch* dsqlScratch);
924 virtual void setParameterName(dsql_par* parameter) const;
925 virtual void genBlr(DsqlCompilerScratch* dsqlScratch);
926 virtual void make(DsqlCompilerScratch* dsqlScratch, dsc* desc);
927
928 virtual void getDesc(thread_db* tdbb, CompilerScratch* csb, dsc* desc);
929 virtual ValueExprNode* copy(thread_db* tdbb, NodeCopier& copier) const;
930 virtual ValueExprNode* pass2(thread_db* tdbb, CompilerScratch* csb);
931 virtual dsc* execute(thread_db* tdbb, Request* request) const;
932
933public:
934 NestConst<ValueExprNode> arg;
935};
936
937
938class LiteralNode final : public TypedNode<ValueExprNode, ExprNode::TYPE_LITERAL>

Callers 4

parseMethod · 0.85
copyMethod · 0.85
dsqlPassMethod · 0.85
setupComputedFieldsMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected