Toolverse
Wszystkie skille

port-c-module

autor: RediSearch

Przewodnik do przenoszenia modułów C do Rusta – krok po kroku

Instalacja

Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.

Instalacja

Szybkie info

Kategoria
Backend
Wyświetlenia
7

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ć

  1. Przygotuj nazwę modułu, który chcesz przenieść (np. triemap). Będzie ona argumentem dla tej umiejętności.

  2. 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.

  3. 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.

  4. Przejrzyj testy w katalogu tests/ i wybierz te, które dotyczą Twojego modułu – będą one kluczowe do weryfikacji poprawności portu.

  5. 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).

  6. 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.

Podobne skille