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

Function compare_expr

src/gpre/sqe.cpp:1281–1309  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1279//
1280
1281static bool compare_expr(const gpre_nod* node1, const gpre_nod* node2)
1282{
1283 assert_IS_NOD(node1);
1284 assert_IS_NOD(node2);
1285
1286 if (node1->nod_type != node2->nod_type)
1287 return false;
1288
1289 switch (node1->nod_type)
1290 {
1291 case nod_field:
1292 {
1293 const ref* ref1 = (ref*) node1->nod_arg[0];
1294 const ref* ref2 = (ref*) node2->nod_arg[0];
1295 return ref1->ref_context == ref2->ref_context && ref1->ref_field == ref2->ref_field &&
1296 ref1->ref_master == ref2->ref_master;
1297 }
1298
1299 case nod_map_ref:
1300 return node1->nod_arg[0] == node2->nod_arg[0];
1301
1302 case nod_udf:
1303 case nod_gen_id:
1304 return node1->nod_arg[0] == node2->nod_arg[0] && node1->nod_arg[1] == node2->nod_arg[1];
1305
1306 default:
1307 return false;
1308 }
1309}
1310
1311
1312//____________________________________________________________

Callers 2

SQE_post_referenceFunction · 0.85
post_mapFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected