Topazdocs
표준 라이브러리와 런타임

코어 라이브러리

출력, 타입 변환, 문자열, `Option`/`Result`, 기본 컬렉션 함수.

코어 라이브러리는 값 생성, 명시적 타입 변환, 문자열 스칼라 접근, 고차 컬렉션 함수, Option/Result 도우미를 제공합니다.

정식 계약

Some, None, Ok, Err는 기본 생성자입니다. print는 문자열을 받습니다. toInt, toFloat는 파싱에 실패하면 빈 값을 돌려주고, toString은 지원되는 값을 결정적인 형식으로 표시합니다. map, filter, reduce는 배열을 왼쪽에서 오른쪽으로 순회합니다.

공개 표면

toIntRadix, fromCodePoint, input, Math, 문자열 검색·자르기·치환, Option.okOr/map/flatMap, Result.map/flatMap, Bytes, Encoding, JSON과 구조화 형식 도우미, 날짜, BigInt, Decimal을 사용할 수 있습니다. 테스트 함수는 테스트 프로필에서만 노출됩니다.

관찰 가능한 동작

변환 함수는 암묵적 타입 승격을 만들지 않습니다. 문자열 함수는 스칼라 위치를 사용합니다. Option/Result 도우미는 스스로 값을 복구하거나 예외로 바꾸지 않고 생성자 구조를 유지합니다. 콜백은 컬렉션 순서대로 호출됩니다.

현재 지원

현재 검사기는 여기에 나열한 함수와 멤버의 매개변수·반환 타입을 확인합니다. 해석기, Rust, Python은 같은 서명을 사용하며 지원하지 않는 이름은 컴파일 전에 거부됩니다.

제약과 제외

잘못된 숫자 문자열, 유효하지 않은 코드 포인트, 지원하지 않는 타입의 문자열 변환, 타입이 맞지 않는 콜백은 명시적으로 실패합니다. 호스트의 로케일, 정수 래핑, 임의 예외 처리를 암묵적으로 따르지 않습니다.

예제

TOPAZ
function parseAll(values: Array<string>) -> Array<Option<int>> {
    return map(values, value => toInt(value))
}

let scalars = "토파즈".scalars()
let parsed = parseAll(["1", "x", "3"])
print("{scalars.length}:{parsed}")

관련 정책