UNPKG

@deep-assistant/agent

Version:

A minimal, public domain AI CLI agent compatible with OpenCode's JSON interface. Bun-only runtime.

42 lines (34 loc) 968 B
export namespace Binary { export function search<T>(array: T[], id: string, compare: (item: T) => string): { found: boolean; index: number } { let left = 0 let right = array.length - 1 while (left <= right) { const mid = Math.floor((left + right) / 2) const midId = compare(array[mid]) if (midId === id) { return { found: true, index: mid } } else if (midId < id) { left = mid + 1 } else { right = mid - 1 } } return { found: false, index: left } } export function insert<T>(array: T[], item: T, compare: (item: T) => string): T[] { const id = compare(item) let left = 0 let right = array.length while (left < right) { const mid = Math.floor((left + right) / 2) const midId = compare(array[mid]) if (midId < id) { left = mid + 1 } else { right = mid } } array.splice(left, 0, item) return array } }