Current section

Files

Jump to
gossamer src gossamer performance.ffi.mjs
Raw

src/gossamer/performance.ffi.mjs

// src/utils/list.ts
import {
List$Empty,
List$isNonEmpty,
List$NonEmpty,
List$NonEmpty$first,
List$NonEmpty$rest
} from "../../prelude.mjs";
function fromArray(array) {
let list = List$Empty();
for (let i = array.length - 1; i >= 0; --i) {
list = List$NonEmpty(array[i], list);
}
return list;
}
// src/gossamer/performance.ffi.ts
var now = () => {
return performance.now();
};
var time_origin = () => {
return performance.timeOrigin;
};
var mark = (name) => {
return performance.mark(name);
};
var measure = (name, startMark, endMark) => {
return performance.measure(name, startMark, endMark);
};
var clear_marks = () => {
performance.clearMarks();
};
var clear_measures = () => {
performance.clearMeasures();
};
var get_entries = () => {
return fromArray(performance.getEntries());
};
var get_entries_by_name = (name) => {
return fromArray(performance.getEntriesByName(name));
};
var get_entries_by_type = (entryType) => {
return fromArray(performance.getEntriesByType(entryType));
};
var to_json = () => {
return performance.toJSON();
};
export {
clear_marks,
clear_measures,
get_entries,
get_entries_by_name,
get_entries_by_type,
mark,
measure,
now,
time_origin,
to_json
};