Erster Docker-Stand

This commit is contained in:
Ali
2026-02-20 16:06:40 +09:00
commit f31e2e8ed3
8818 changed files with 1605323 additions and 0 deletions

View File

@@ -0,0 +1,3 @@
export { PRINT_WARNING, PRINT_ERROR } from "./print"
export { timer } from "./timer"
export { toFastProperties } from "./to-fast-properties"

View File

@@ -0,0 +1,14 @@
export function PRINT_ERROR(msg: string) {
/* istanbul ignore else - can't override global.console in node.js */
if (console && console.error) {
console.error(`Error: ${msg}`)
}
}
export function PRINT_WARNING(msg: string) {
/* istanbul ignore else - can't override global.console in node.js*/
if (console && console.warn) {
// TODO: modify docs accordingly
console.warn(`Warning: ${msg}`)
}
}

View File

@@ -0,0 +1,7 @@
export function timer<T>(func: () => T): { time: number; value: T } {
const start = new Date().getTime()
const val = func()
const end = new Date().getTime()
const total = end - start
return { time: total, value: val }
}

View File

@@ -0,0 +1,26 @@
// based on: https://github.com/petkaantonov/bluebird/blob/b97c0d2d487e8c5076e8bd897e0dcd4622d31846/src/util.js#L201-L216
export function toFastProperties(toBecomeFast: any) {
function FakeConstructor() {}
// If our object is used as a constructor it would receive
FakeConstructor.prototype = toBecomeFast
const fakeInstance = new (FakeConstructor as any)()
function fakeAccess() {
return typeof fakeInstance.bar
}
// help V8 understand this is a "real" prototype by actually using
// the fake instance.
fakeAccess()
fakeAccess()
// Always true condition to suppress the Firefox warning of unreachable
// code after a return statement.
if (1) return toBecomeFast
// Eval prevents optimization of this method (even though this is dead code)
/* istanbul ignore next */
// tslint:disable-next-line
eval(toBecomeFast)
}