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

Method winPass

src/dsql/WinNodes.cpp:257–269  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

255}
256
257dsc* PercentRankWinNode::winPass(thread_db* /*tdbb*/, Request* request, SlidingWindow* window) const
258{
259 impure_value_ex* impureTemp = request->getImpure<impure_value_ex>(tempImpure);
260
261 const double dividend = impureTemp->vlux_count - 1;
262 const double divisor = window->getPartitionSize() - 1;
263
264 impureTemp->vlu_misc.vlu_double = divisor == 0 ?
265 0 :
266 dividend / divisor;
267
268 return &impureTemp->vlu_desc;
269}
270
271AggNode* PercentRankWinNode::dsqlCopy(DsqlCompilerScratch* dsqlScratch) /*const*/
272{

Callers 1

internalGetRecordMethod · 0.45

Calls 15

EVL_exprFunction · 0.85
MOV_get_int64Function · 0.85
raiseFunction · 0.85
GdsClass · 0.85
NumClass · 0.85
StrClass · 0.85
MOV_get_longFunction · 0.85
getPartitionSizeMethod · 0.80
getFrameSizeMethod · 0.80
getRecordPositionMethod · 0.80
getPartitionStartMethod · 0.80
moveWithinFrameMethod · 0.80

Tested by

no test coverage detected