문제

나는 C 헤더를 포함한 파일을 다음과 같은 유형의 정의:

// example.h
typedef struct Vertex {
  int color;
} Vertex;

내가 하려고 포장이 구조와 원하지만,분명히 나는 뭔가 잘못입니다.나의 원 인터페이스 파일은 다음과 같습

// example.i
%module example
%inline %{
#include "example.h"
}

하지만 만약 내가 내용을 복사하의 헤더 내 파일로 내 인터페이스 파일에는 후자처럼 보인

%module example

%inline %{
typedef struct Vertex {
  int color;
} Vertex;
%}

액세스할 수 있는 구조체에서는 다음과 같은 방법으로

irb> require 'example'
# => true
irb> Examlpe::Vertex
# => Vertex

는 방법이 있습을 자동으로 포장하는 헤더 파일입니까?나는 원하지 않을 복사 및 붙여넣기 내용 헤더 파일의 인터페이스 파일 때마다 나는 그것을 변경합니다.

미리 감사드립니다.

--t6d

도움이 되었습니까?

해결책

그것은 이후 나는 원하지만 내 기억으로%인라인 사용을 통과하는 인라인 부분에 직접 컴파일러;원 자체하지 않는 그것을 보고,내가 무슨 필요가 있다고 생각입니다:

%module example
%include<example.h>
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top