Skip to main content

zerocopy-development

Develop, modify, build, test, or validate code in google/zerocopy's zerocopy crate and its derive crate. Use for implementation work, compiler-version gating, generated macro code, UI or compile-fail tests, test placement, linting, feature-gate validation, and pre-submission checks.

소스 정보

저장소
google/zerocopy
최근 소스 활동
2026년 9월 23일 18:26
감지된 SKILL.md 언어
영어
스타
2,618
포크
188

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
4 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
zerocopy-development
description
Develop, modify, build, test, or validate code in google/zerocopy's zerocopy crate and its derive crate. Use for implementation work, compiler-version gating, generated macro code, UI or compile-fail tests, test placement, linting, feature-gate validation, and pre-submission checks.
# Zerocopy Development Apply the repository-scoped instructions for the `zerocopy/` subtree in addition to this skill. Commands in this skill assume the working directory is `zerocopy/` unless stated otherwise. ## Workflow 1. Inspect the affected implementation, tests, configuration, and nearby abstractions before changing behavior. Reuse existing utilities and patterns where they fit. 2. Use `./cargo.sh`, never direct `cargo`. Read [Toolchains and Version Gating](references/toolchains.md) when choosing toolchains or changing compiler-version-dependent behavior. 3. Make the narrowest change that satisfies the task. Keep generated and handwritten behavior consistent. 4. If the change authors or modifies unsafe Rust, an unsafe API or trait, raw pointer or FFI code, safety documentation, a soundness argument, or an invariant-bearing abstraction, also use the sibling `unsafe-rust` skill. Do not substitute a separate zerocopy-specific unsafe methodology. 5. Add or update tests at the level that owns the behavior. For UI, compile-fail, or compiler-output changes, read [UI and Output Tests](references/ui-tests.md) before editing fixtures. 6. Before submitting, follow [Validation](references/validation.md), including the applicable toolchain, feature, and pre-push checks. ## Macro Development Put shared macro logic in `src/util/macro_util.rs` when doing so avoids repeating generated code. Generated code often triggers lints because names and shapes come from user input; use targeted `#[allow(...)]` attributes where needed to prevent generated code from producing spurious lint failures. ## Commit Messages Use GitHub issue syntax when a commit resolves or advances an issue: - `Closes #123` when the commit resolves the issue. - `Makes progress on #123` when the commit advances but does not resolve it.
GitHub에서 보기