- spreadsheet_types.ts · spreadsheet_view_types.ts — 문서 · 칸 · 서식 · 수식 나무 · 값 · 명령 · 계산 엔진 · 화면 문맥 계약 - 머리 주석에 파일 · 주인(A~F) · 예산 줄 수 · 크기 예산(gzip 54 KB) · 규칙(외부 라이브러리 0 · M02 만 늦게 불러옴) - A · B 엔진 · C 격자 · D 진입 · E 도구 공개 함수 머리(빈 몸) - spreadsheet_sample.json — basis/<열 id>.json 한 벌 견본(병합 · 서식 · 다른 시트 참조 · 숨김 · 계산값) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0168FQuoV7vDh5nhnSowW5cp
26 lines
1.3 KiB
TypeScript
26 lines
1.3 KiB
TypeScript
/* =============================================================================
|
|
* spreadsheet_functions.ts (주인 B)
|
|
* 함수 표 — 이름(대문자) → 뜻. 몸은 `spreadsheet_functions_math.ts` · `_misc.ts` 에 두고 여기서 모음.
|
|
* 1단계 약 45 — 수학 SUM PRODUCT SUMPRODUCT ROUND ROUNDUP ROUNDDOWN INT TRUNC CEILING FLOOR ABS MOD
|
|
* POWER SQRT PI SIN COS TAN ASIN ACOS ATAN RADIANS DEGREES MIN MAX AVERAGE · 논리 IF AND OR NOT IFERROR ·
|
|
* 글 CONCATENATE FIXED TEXT LEN LEFT RIGHT MID VALUE · 찾기 VLOOKUP HLOOKUP INDEX MATCH CHOOSE ·
|
|
* 세기 COUNT COUNTA COUNTIF SUMIF. 뜻 · 경계값은 엑셀과 같게(Formula.js 는 시험 대조 답으로만).
|
|
* 없는 이름 = `#NAME?` · 인자 수가 min · max 밖이면 A 의 eval 이 `#VALUE!` + 까닭(엑셀은 입력을 막음).
|
|
* 0 계약 머리 — 몸은 B 가 채움.
|
|
* ========================================================================== */
|
|
|
|
import type { SheetFunction } from "./spreadsheet_types";
|
|
|
|
const todo = (): never => {
|
|
throw new Error("spreadsheet_functions: 아직 없음(B)");
|
|
};
|
|
|
|
export function getFunction(_name: string): SheetFunction | undefined {
|
|
return todo();
|
|
}
|
|
|
|
/** 아는 함수 이름 전부(가나다 · 자동 완성은 2단계) */
|
|
export function functionNames(): string[] {
|
|
return todo();
|
|
}
|