22.2. Korzystanie z bibliotek języka C z poziomu kodu Ruby

Podziękowania dla Garretta Rooneya

Problem

W programie napisanym w Ruby chcemy skorzystać z biblioteki, którą zaimplementowano w języku C i która nie posiada oprawy dla języka Ruby.

Rozwiązanie

Można napisać rozszerzenie języka Ruby opakowujące bibliotekę w języku C za pomocą klas i metod języka Ruby.

Załóżmy, że chcemy stworzyć interfejs w języku Ruby do metod obsługi plików w języku C (co prawda klasa File dobrze spełnia swoją funkcję, ale zapomnijmy o tym na chwilę). Chcemy uzyskać możliwość otwarcia pliku dyskowego i czytania z niego danych bajt po bajcie.

Podobnie jak w „22.1. Pisanie rozszerzeń w języku C dla języka Ruby”, potrzebny jest plik w języku C, który implementuje ...

Get Ruby. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.