규칙 11.16
11장, 대상과 오라클 테스트
A capability that only WebGL2 has must enter the surface only as a row of §9.3 (an author-facing name) or as a capability of §10 (a host feature a module declares or derives); it must not become a language construct, a built-in value or a type by another route. Where neither is justified, its row is n/a with the reason, and the reason is a rule.
규칙 본문과 그 아래 항목은 설계 문서에 적힌 컴파일러 원문이라 한국어 페이지에서도 영어로 둡니다.
근거
Rule 1.2 makes GLSL ES 3.00 a target and not the definition of a construct, and Rule 2.1 gives an author-facing name three sources, none of which is WebGL2; a WebGL2-only capability therefore needs the one door the rules leave open, and a row that says n/a without a rule is the “TypeShade cannot” this proposal exists to end.
출처
검증 방식
테스트로 확인합니다. 테스트나 게이트 스크립트, CI 워크플로가 이 규칙을 가리키고, 아래 파일 가운데 하나라도 규칙을 더는 가리키지 않으면 추적 검사가 실패합니다.
컴파일러가 이 규칙을 적용하는 곳을 규칙이 직접 적은 내용입니다.
capability-coverage.test.ts, which fails on a WebGL2-flagged row whose WebGL2 status is typed with no §9.3 row and no §10 capability behind it, and on one whose status is n/a with no rule number in its reason.
커밋 91c2fe31에서 이 규칙을 확인하는 파일입니다. 파일마다 규칙을 처음 가리키는 줄로 연결했습니다.
-
src/core/spec-conformance/capability-coverage.test.ts:47(컴파일러의 자체 테스트가 확인)
함께 보기
소스
커밋 91c2fe31의 규칙 원문:
docs/language-design.md:1375(설계 문서)reqs/rules/RULE-1116.md(추적 항목)