dự án
Trình phân tích cú pháp được kết nối dưới dạng một mô-đun (“from inlinec import inlinec”), thực hiện quá trình xử lý ban đầu và nhanh chóng dịch các định nghĩa của hàm C được đánh dấu bằng cách sử dụng chú thích @inlinec thành các liên kết ctypes và thay thế phần thân của hàm C bằng một cuộc gọi đến các ràng buộc này. Sau khi chuyển đổi như vậy, trình thông dịch Python sẽ nhận được văn bản nguồn được chuyển đổi chính xác của tập lệnh, trong đó các hàm C được gọi bằng cách sử dụng
# mã hóa: nội tuyến
từ nội tuyến nhập nội tuyến
@inlinec
kiểm tra chắc chắn():
#bao gồm
kiểm tra trống () {
printf("Xin chào thế giới");
}
Sự phát triển cho đến nay vẫn được trình bày dưới dạng nguyên mẫu thử nghiệm, có những thiếu sót như thiếu hỗ trợ truyền con trỏ (trừ chuỗi) tới hàm, nhu cầu chạy
“gcc -E” để xử lý trước mã, lưu các tệp trung gian *.so, *.o và *.c trong thư mục hiện tại, không lưu phiên bản đã chuyển đổi vào bộ đệm và thực hiện các giai đoạn phân tích cú pháp không cần thiết (độ trễ kéo dài mỗi khi nó chạy).
Nguồn: opennet.ru