Skip to content

API 레퍼런스

이 섹션은 github.com/cybergodev/json 라이브러리의 전체 API 참조를 제공합니다.

두 가지 API 스타일

이 라이브러리는 패키지 함수(예: json.GetString(data, "path"), 인스턴스 생성 불필요)와 Processor 메서드(예: p.GetString(data, "path"), 설정 재사용, 사전 파싱 캐시, 훅 시스템 지원) 두 가지 API를 제공합니다. 어느 것을 사용할지 잘 모르시나요? Processor 가이드의 선택 의사결정 트리를 참조하세요.

모듈 인덱스

함수 API

모듈설명
패키지 함수패키지 레벨 함수 참조 (쿼리/수정/삭제/인코딩/파싱/배치/JSONL/파일/반복)
Processor프로세서 메서드 (패키지 함수와 미러 분류, 추가로 수명 주기와 사전 파싱 포함)

타입과 인터페이스

모듈설명
Config설정 옵션 상세 (DefaultConfig / SecurityConfig / PrettyConfig)
타입 정의핵심 타입 (Config / Schema / Stats / AccessResult, Encoder / Decoder 포함)
인터페이스 정의확장 인터페이스 (CustomEncoder / Validator / Hook / PathParser)
이터레이터와 IterableValueIterator / BatchIterator / ParallelIterator / StreamIterator 타입
제네릭 작업제네릭 API (GetTyped[T] / StreamLinesInto[T] / Result[T])
상수와 오류상수와 오류 타입

유틸리티와 보조

모듈설명
유틸리티 함수CompareJSON / MergeJSON, 캐시 관리, 전역 프로세서, SafeError / RedactedPath, AccessResult 메서드
포맷팅 가이드Print 계열 마이그레이션 가이드 (제거된 API 의 대안)

크로스 모듈 주제

모듈설명
스트림 처리대용량 파일 스트림 처리 가이드
JSONL / NDJSON 처리JSONL 프로세서 (StreamJSONL / NDJSONProcessor / JSONLWriter)
보안 검증보안 모드 API (SecurityConfig / DangerousPattern / RegisterDangerousPattern)
Schema 검증기Schema 검증 (ValidateSchema / DefaultSchema / NewSchemaWithConfig)
Hook 훅 시스템작업 가로채기 훅 (LoggingHook / TimingHook / ValidationHook / ErrorHook)
커스텀 인코더커스텀 인코더 (CustomEncoder / TypeEncoder)

빠른 찾기

기능별 분류

경로 쿼리

함수설명
Get, GetWithContext, GetString, GetInt, GetFloat, GetBool, GetArray, GetObject타입 안전 가져오기
GetTyped[T]제네릭 가져오기
SafeGet안전한 AccessResult 가져오기
GetMultiple배치 가져오기

수정 작업

함수설명
Set, SetMultiple값 설정
SetCreate, SetMultipleCreate값 설정 및 자동 경로 생성
Delete, DeleteClean값 삭제
ProcessBatch배치 작업

인코딩/디코딩

함수설명
Marshal, Unmarshal표준 인코딩/디코딩 (encoding/json 호환, cfg 추가 가능)
MarshalIndent포맷팅 인코딩 (encoding/json.MarshalIndent 호환, cfg 추가 가능)
Encode, EncodeWithConfig문자열로 인코딩
NewEncoder, NewDecoder스트림 인코딩/디코딩
ParseJSON 파싱

포맷팅

함수설명
PrettifyJSON 포맷팅
CompactJSON 압축 (buffer 형식, encoding/json.Compact 호환)
CompactStringJSON 압축 (문자열 입력/출력 형식, Processor.Compact 미러)

파일 작업

함수설명
LoadFromFile, SaveToFile파일 읽기/쓰기
LoadFromReaderReader 에서 읽기
MarshalToFile, UnmarshalFromFile파일 인코딩/디코딩

스트림 처리

타입/메서드설명
StreamLinesInto[T]Reader 에서 JSONL 을 스트림으로 읽어 []T로 변환
ParseJSONLJSONL 바이트를 []any로 파싱
ToJSONL, ToJSONLString[]any를 JSONL 형식으로 변환
JSONLWriterJSONL 쓰기 (Write/WriteAll/WriteRaw)
NDJSONProcessorNDJSON/JSONL 프로세서
ForeachFile파일 스트림 처리

검증

함수설명
ValidJSON 검증 (encoding/json.Valid 호환)
ValidWithConfig설정이 있는 JSON 검증
ValidateSchemaSchema 검증 (Schema 타입과 함께 사용)
CompareJSONJSON 동등성 비교

명명 규칙

라이브러리는 다음 명명 규칙을 따릅니다:

패턴설명예제
Get{Type}지정된 타입 가져오기 (defaultValue 지원)GetString, GetInt
GetTyped[T]제네릭 가져오기, T 반환GetTyped[User]
New{Type}인스턴스 생성New (*Processor 반환), NewEncoder
Default{Type}기본 설정DefaultConfig
{Type}Config설정 프리셋SecurityConfig, PrettyConfig

관련 문서