ifc-language-server/node_modules/reusify/benchmarks/createNoCodeFunction.js
Ryan Schultz 8afacf268a Implemented a working Language Server Protocol (LSP) for IFC files with:
- 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."
2025-12-07 10:20:07 -06:00

30 lines
590 B
JavaScript

'use strict'
var fib = require('./fib')
var max = 100000000
var start = Date.now()
// create a funcion with the typical error
// pattern, that delegates the heavy load
// to something else
function createNoCodeFunction () {
/* eslint no-constant-condition: "off" */
var num = 100
;(function () {
if (null) {
// do nothing
} else {
fib(num)
}
})()
}
for (var i = 0; i < max; i++) {
createNoCodeFunction()
}
var time = Date.now() - start
console.log('Total time', time)
console.log('Total iterations', max)
console.log('Iteration/s', max / time * 1000)