MCPcopy Create free account
hub / github.com/LadybugDB/ladybug / isAnyGraphNodePattern

Function isAnyGraphNodePattern

src/binder/bind/read/bind_match.cpp:44–59  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

42}
43
44static bool isAnyGraphNodePattern(const NodeOrRelExpression& pattern,
45 main::ClientContext* context) {
46 if (!ExpressionUtil::isNodePattern(pattern) || pattern.getNumEntries() != 1) {
47 return false;
48 }
49 auto transaction = transaction::Transaction::Get(*context);
50 auto useInternal = context->useInternalCatalogEntry();
51 auto defaultGraphCatalog = main::DatabaseManager::Get(*context)->getDefaultGraphCatalog();
52 if (defaultGraphCatalog == nullptr ||
53 !defaultGraphCatalog->containsTable(transaction, "_nodes", useInternal)) {
54 return false;
55 }
56 return pattern.getEntry(0)->getTableID() ==
57 defaultGraphCatalog->getTableCatalogEntry(transaction, "_nodes", useInternal)
58 ->getTableID();
59}
60
61std::unique_ptr<BoundReadingClause> Binder::bindMatchClause(const ReadingClause& readingClause) {
62 auto& matchClause = readingClause.constCast<MatchClause>();

Callers 1

rewriteMatchPatternMethod · 0.85

Calls 5

containsTableMethod · 0.80
getTableCatalogEntryMethod · 0.80
getNumEntriesMethod · 0.45
getEntryMethod · 0.45

Tested by

no test coverage detected