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

Method InitParameterNode

src/jrd/ExtEngineManager.cpp:161–181  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

159 {
160 public:
161 InitParameterNode(thread_db* tdbb, MemoryPool& pool, CompilerScratch* csb,
162 Array<NestConst<Parameter> >& parameters, MessageNode* aMessage, USHORT aArgNumber)
163 : TypedNode<StmtNode, StmtNode::TYPE_EXT_INIT_PARAMETER>(pool),
164 message(aMessage),
165 argNumber(aArgNumber)
166 {
167 Parameter* parameter = parameters[argNumber / 2];
168 defaultValueNode = NULL;
169
170 if (parameter->prm_mechanism != prm_mech_type_of &&
171 !fb_utils::implicit_domain(parameter->prm_field_source.c_str()))
172 {
173 MetaNamePair namePair(parameter->prm_field_source, "");
174
175 FieldInfo fieldInfo;
176 bool exist = csb->csb_map_field_info.get(namePair, fieldInfo);
177
178 if (exist && fieldInfo.defaultValue)
179 defaultValueNode = CMP_clone_node(tdbb, csb, fieldInfo.defaultValue);
180 }
181 }
182
183 string internalPrint(NodePrinter& printer) const
184 {

Callers

nothing calls this directly

Calls 4

implicit_domainFunction · 0.85
CMP_clone_nodeFunction · 0.85
c_strMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected