Instalacja
Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.
Instalacja
O skillu
Umiejętność wspierająca proces portowania modułów napisanych w C na Rust. Zawiera strukturyzowany plan analizy kodu źródłowego, identyfikacji zależności i strategii migracji. Idealna dla zespołów modernizujących starsze komponenty C, chcących wykorzystać bezpieczeństwo i wydajność Rusta. Prowadzi Cię przez badanie struktury danych, mapowanie funkcji eksportowanych, obsługę stanu globalnego i integrację z istniejącymi testami.
Jak używać
Przygotuj nazwę modułu, który chcesz przenieść (np. triemap). Będzie ona argumentem dla tej umiejętności.
Przeanalizuj kod źródłowy modułu C – otwórz pliki .c i .h znajdujące się w katalogu src/. Zanotuj struktury danych, ich pola, sposób przekazywania parametrów (przez wartość czy referencję) oraz jakie typy i funkcje moduł importuje z innych części kodu.
Sprawdź, które moduły C zależą od tego, który portujesz. Jeśli zależności są zaimplementowane w Rust, zidentyfikuj odpowiednie craty. Jeśli pozostają w C, zdecyduj, czy je najpierw przenieść, czy wywoływać przez FFI.
Przejrzyj testy w katalogu tests/ i wybierz te, które dotyczą Twojego modułu – będą one kluczowe do weryfikacji poprawności portu.
Utwórz plik planu portowania (np. triemap_plan.md), w którym opiszesz kolejne kroki, decyzje architektoniczne i ewentualne modyfikacje kodu C ułatwiające migrację (np. wprowadzenie getterów i setterów, podział na mniejsze części).
Stwórz nowy crate Rust w katalogu src/redisearch_rs za pomocą cargo new, a następnie implementuj logikę w idiomatic Rust, stopniowo zastępując funkcjonalność C.