규칙 3.1
3장, 텍스트 구조와 이름 테스트
A shader file must begin with the directive "use typeshade" as its first statement.
규칙 본문과 그 아래 항목은 설계 문서에 적힌 컴파일러 원문이라 한국어 페이지에서도 영어로 둡니다.
근거
the directive is what tells the compiler and the language service that the file is a shader and not host code; the bundler and a host program’s tsconfig read the file’s name first, which Rule 3.8 fixes as *.shade.ts, and the directive is what they check it against.
출처
surface §1 and src/compiler/ts/source-file.ts.
검증 방식
테스트로 확인합니다. 테스트나 게이트 스크립트, CI 워크플로가 이 규칙을 가리키고, 아래 파일 가운데 하나라도 규칙을 더는 가리키지 않으면 추적 검사가 실패합니다.
컴파일러가 이 규칙을 적용하는 곳을 규칙이 직접 적은 내용입니다.
TS8001 MISSING_DIRECTIVE, which yields an otherwise empty result, for a file with no directive at all; TS8069 MISPLACED_DIRECTIVE on a directive after another top-level statement, another string directive included, with the rest of the file still checked (#200, proposal 0012), pinned by src/compiler/ts/directive-placement.test.ts.
커밋 c66579bf에서 이 규칙을 확인하는 파일입니다. 파일마다 규칙을 처음 가리키는 줄로 연결했습니다.
설명하는 절
커밋 c66579bf의 표면 문서에서 이 규칙을 설명하는 절입니다.
적용하는 오류 코드
규칙이 Enforced by 항목에서 가리키는 진단 코드와, 레지스트리 설명에서 이 규칙을 가리키는 진단 코드입니다.
함께 보기
소스
커밋 c66579bf의 규칙 원문:
docs/language-design.md:172(설계 문서)reqs/rules/RULE-0301.md(추적 항목)