// Step 1910: CrossLanguageBoundaryDetector // Identifies LSP goto-definition requests whose target symbol is a cross-language // ABI boundary symbol registered in the CrossLanguageSymbolTable. // // t1: request for a known boundary symbol → isBoundary=true, returns record // t2: request for an unknown symbol → isBoundary=false // t3: request uri + symbol name combined lookup works // t4: multiple boundary symbols — only the queried one is detected // t5: languageId-based lookup in addition to name-only lookup #include "CrossLanguageBoundaryDetector.h" #include "CrossLanguageSymbolTable.h" #include "ABIBoundaryExtractor.h" #include #include namespace ws = whetstone; static int p=0,f=0; #define T(n) { std::cout<<" "<<#n<<"... "; } #define P() { std::cout<<"PASS\n"; ++p; } #define F(m) { std::cout<<"FAIL: "< 0 ? 1 : 0; }