M
m04-zero-cost
Rozwiąż błędy generyki i trait'ów w Ruscie — wybierz między polimorfizmem compile-time a runtime
Instalacja
Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.
Instalacja
O skillu
Skill dla programistów Rust, którzy walczą z błędami E0277, E0308, E0599 związanymi z genericami, trait'ami i abstrakcjami zero-cost. Zamiast mechanicznie dodawać trait bounds, nauczy Cię zadawać właściwe pytania: czy typ jest znany w compile-time czy runtime? Czy potrzebujesz static czy dynamic dispatch? Czy abstrakacja jest na właściwym poziomie? Prowadzi Cię przez myślenie projektowe stojące za polimorfizmem w Ruscie.
Jak używać
- Aktywuj skill m04-zero-cost w swoim środowisku Claude/Copilot, gdy napotkasz błędy kompilacji związane z genericami, trait'ami lub trait bounds — szczególnie E0277 (trait bound not satisfied), E0308 (type mismatch) lub E0599 (method not found). 2. Zamiast pytać o szybką poprawkę, zadaj sobie pytanie z sekcji "Core Question": czy typ jest znany w compile-time czy runtime? Czy potrzebujesz heterogenicznej kolekcji? Jaki jest Twój priorytet — wydajność czy czas kompilacji? 3. Skonsultuj tabelę "Error → Design Question" — każdy błąd mapuje się na głębsze pytanie projektowe, nie tylko na syntaktyczną poprawkę. 4. Przeanalizuj swoją abstrakcję za pomocą trzystopniowego frameworku: (a) jaka abstrakcja jest potrzebna (to samo zachowanie, różne typy = trait; różne zachowanie, ten sam typ = enum), (b) kiedy typ jest znany (compile-time = generics, runtime = trait objects), (c) jaki jest trade-off (wydajność vs. czas kompilacji vs. elastyczność). 5. Jeśli błąd się powtarza, użyj sekcji "Trace Up" — przejdź do powiązanych skills (m09-domain dla abstrakcji, m05-type-driven dla typestate, m10-performance dla optymalizacji) i pytaj o poziom abstrakcji, a nie o składnię.