/trunk/Examples/test-suite/extend_typedef_class.i
Swig | 81 lines | 61 code | 20 blank | 0 comment | 0 complexity | 4371679d60c160e1cd02215ac9dfdcf6 MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
- %module extend_typedef_class
- // classes in global namespace
- %inline %{
- typedef struct tagAClass {
- int membervar;
- } AClass;
- struct BClass {
- int membervar;
- };
- typedef struct tagCClass {
- int membervar;
- } CClass;
- // Unnamed struct
- typedef struct {
- int membervar;
- } DClass;
- %}
- %extend tagAClass {
- int getvar() { return $self->membervar; }
- }
- %extend BClass {
- int getvar() { return $self->membervar; }
- }
- %extend CClass {
- int getvar() { return $self->membervar; }
- }
- %extend DClass {
- int getvar() { return $self->membervar; }
- }
- // classes in a namespace
- %inline %{
- namespace Space {
- typedef struct tagAStruct {
- int membervar;
- } AStruct;
- struct BStruct {
- int membervar;
- };
- typedef struct tagCStruct {
- int membervar;
- } CStruct;
- // Unnamed struct
- typedef struct {
- int membervar;
- } DStruct;
- }
- %}
- namespace Space {
- %extend tagAStruct {
- int getvar() { return $self->membervar; }
- }
- %extend BStruct {
- int getvar() { return $self->membervar; }
- }
- %extend CStruct {
- int getvar() { return $self->membervar; }
- }
- %extend DStruct {
- int getvar() { return $self->membervar; }
- }
- }