| 6487 | } |
| 6488 | |
| 6489 | bool FieldNode::dsqlFieldFinder(FieldFinder& visitor) |
| 6490 | { |
| 6491 | visitor.field = true; |
| 6492 | |
| 6493 | switch (visitor.matchType) |
| 6494 | { |
| 6495 | case FIELD_MATCH_TYPE_EQUAL: |
| 6496 | return dsqlContext->ctx_scope_level == visitor.checkScopeLevel; |
| 6497 | |
| 6498 | case FIELD_MATCH_TYPE_LOWER: |
| 6499 | return dsqlContext->ctx_scope_level < visitor.checkScopeLevel; |
| 6500 | |
| 6501 | case FIELD_MATCH_TYPE_LOWER_EQUAL: |
| 6502 | return dsqlContext->ctx_scope_level <= visitor.checkScopeLevel; |
| 6503 | |
| 6504 | ///case FIELD_MATCH_TYPE_HIGHER: |
| 6505 | /// return dsqlContext->ctx_scope_level > visitor.checkScopeLevel; |
| 6506 | |
| 6507 | ///case FIELD_MATCH_TYPE_HIGHER_EQUAL: |
| 6508 | /// return dsqlContext->ctx_scope_level >= visitor.checkScopeLevel; |
| 6509 | |
| 6510 | default: |
| 6511 | fb_assert(false); |
| 6512 | } |
| 6513 | |
| 6514 | return false; |
| 6515 | } |
| 6516 | |
| 6517 | ValueExprNode* FieldNode::dsqlFieldRemapper(FieldRemapper& visitor) |
| 6518 | { |