- Hover provider showing entity information and type - Go-to-definition (F12) for entity references - Basic IFC file validation (ISO-10303-21 header check) - Entity parsing with regex-based detection - Proper CommonJS module system (avoiding ES module issues) This replaces the broken baseline from ifc-developer-tools which had: - Non-functional ES module configuration - Circular dependency issues - Parser crashes - Non-working PositionVisitor Built on Microsoft's LSP example template for a clean, maintainable foundation. Next: Add hierarchical entity dependency tree in hover tooltip."
27 lines
753 B
TypeScript
27 lines
753 B
TypeScript
type VisitorKeys$1 = {
|
|
readonly [type: string]: readonly string[];
|
|
};
|
|
/**
|
|
* @typedef {{ readonly [type: string]: ReadonlyArray<string> }} VisitorKeys
|
|
*/
|
|
/**
|
|
* @type {VisitorKeys}
|
|
*/
|
|
declare const KEYS: VisitorKeys$1;
|
|
|
|
/**
|
|
* Get visitor keys of a given node.
|
|
* @param {object} node The AST node to get keys.
|
|
* @returns {readonly string[]} Visitor keys of the node.
|
|
*/
|
|
declare function getKeys(node: object): readonly string[];
|
|
/**
|
|
* Make the union set with `KEYS` and given keys.
|
|
* @param {VisitorKeys} additionalKeys The additional keys.
|
|
* @returns {VisitorKeys} The union set.
|
|
*/
|
|
declare function unionWith(additionalKeys: VisitorKeys): VisitorKeys;
|
|
|
|
type VisitorKeys = VisitorKeys$1;
|
|
|
|
export { KEYS, VisitorKeys, getKeys, unionWith };
|