Class: Notcurses::NcmenuOptions

Inherits:
Object
  • Object
show all
Defined in:
ext/notcurses/src/notcurses_wrap.c,
ext/notcurses/src/notcurses_wrap.c

Overview

Proxy of C Notcurses::NcmenuOptions struct

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ Object

call-seq:

NcmenuOptions.new

Class constructor.



58294
58295
58296
58297
58298
58299
58300
58301
58302
58303
58304
58305
58306
# File 'ext/notcurses/src/notcurses_wrap.c', line 58294

SWIGINTERN VALUE
_wrap_new_NcmenuOptions(int argc, VALUE *argv, VALUE self) {
  struct ncmenu_options *result = 0 ;
  
  if ((argc < 0) || (argc > 0)) {
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
  }
  result = (struct ncmenu_options *)calloc(1, sizeof(struct ncmenu_options));
  DATA_PTR(self) = result;
  return self;
fail:
  return Qnil;
}

Instance Method Details

#flags(*args) ⇒ Object

call-seq:

flags -> uint64_t

Get value of attribute.



58230
58231
58232
58233
58234
58235
58236
58237
58238
58239
58240
58241
58242
58243
58244
58245
58246
58247
58248
58249
58250
58251
58252
58253
58254
58255
58256
58257
58258
58259
58260
58261
58262
58263
58264
58265
58266
58267
# File 'ext/notcurses/src/notcurses_wrap.c', line 58230

SWIGINTERN VALUE
_wrap_NcmenuOptions_flags_get(int argc, VALUE *argv, VALUE self) {
  struct ncmenu_options *arg1 = (struct ncmenu_options *) 0 ;
  void *argp1 = 0 ;
  int res1 = 0 ;
  uint64_t result;
  VALUE vresult = Qnil;
  
  if ((argc < 0) || (argc > 0)) {
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
  }
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_ncmenu_options, 0 |  0 );
  if (!SWIG_IsOK(res1)) {
    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "struct ncmenu_options *","flags", 1, self )); 
  }
  arg1 = (struct ncmenu_options *)(argp1);
  result = (uint64_t) ((arg1)->flags);
  vresult = SWIG_From_unsigned_SS_long((unsigned long)(result));
  {
    if (vresult == Qnil) {
      vresult = rb_hash_new();
    }
    if (!RB_TYPE_P(vresult, T_HASH)) {
      VALUE temp = rb_hash_new();
      rb_hash_aset(temp, ID2SYM(rb_intern("return")), vresult);
      vresult = temp;
    }
    
    swig_type_info *ty = SWIG_TypeQuery("struct ncmenu_options *");
    if (!ty) ty = SWIGTYPE_p_ncmenu_options;
    
    VALUE obj = SWIG_NewPointerObj((void *)arg1, ty, 0);
    rb_hash_aset(vresult, ID2SYM(rb_intern("self")), obj);
  }
  return vresult;
fail:
  return Qnil;
}

#flags=(*args) ⇒ Object

call-seq:

flags=(x) -> uint64_t

Set new value for attribute.



58184
58185
58186
58187
58188
58189
58190
58191
58192
58193
58194
58195
58196
58197
58198
58199
58200
58201
58202
58203
58204
58205
58206
58207
58208
58209
58210
58211
58212
58213
58214
58215
58216
58217
58218
58219
58220
58221
58222
58223
58224
58225
58226
58227
# File 'ext/notcurses/src/notcurses_wrap.c', line 58184

SWIGINTERN VALUE
_wrap_NcmenuOptions_flags_set(int argc, VALUE *argv, VALUE self) {
  struct ncmenu_options *arg1 = (struct ncmenu_options *) 0 ;
  uint64_t arg2 ;
  void *argp1 = 0 ;
  int res1 = 0 ;
  unsigned long val2 ;
  int ecode2 = 0 ;
  VALUE vresult = Qnil;
  
  if ((argc < 1) || (argc > 1)) {
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
  }
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_ncmenu_options, 0 |  0 );
  if (!SWIG_IsOK(res1)) {
    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "struct ncmenu_options *","flags", 1, self )); 
  }
  arg1 = (struct ncmenu_options *)(argp1);
  ecode2 = SWIG_AsVal_unsigned_SS_long(argv[0], &val2);
  if (!SWIG_IsOK(ecode2)) {
    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "uint64_t","flags", 2, argv[0] ));
  } 
  arg2 = (uint64_t)(val2);
  if (arg1) (arg1)->flags = arg2;
  {
    if (vresult == Qnil) {
      vresult = rb_hash_new();
    }
    if (!RB_TYPE_P(vresult, T_HASH)) {
      VALUE temp = rb_hash_new();
      rb_hash_aset(temp, ID2SYM(rb_intern("return")), vresult);
      vresult = temp;
    }
    
    swig_type_info *ty = SWIG_TypeQuery("struct ncmenu_options *");
    if (!ty) ty = SWIGTYPE_p_ncmenu_options;
    
    VALUE obj = SWIG_NewPointerObj((void *)arg1, ty, 0);
    rb_hash_aset(vresult, ID2SYM(rb_intern("self")), obj);
  }
  return vresult;
fail:
  return Qnil;
}

#headerchannels(*args) ⇒ Object

call-seq:

headerchannels -> uint64_t

Get value of attribute.



58022
58023
58024
58025
58026
58027
58028
58029
58030
58031
58032
58033
58034
58035
58036
58037
58038
58039
58040
58041
58042
58043
58044
58045
58046
58047
58048
58049
58050
58051
58052
58053
58054
58055
58056
58057
58058
58059
# File 'ext/notcurses/src/notcurses_wrap.c', line 58022

SWIGINTERN VALUE
_wrap_NcmenuOptions_headerchannels_get(int argc, VALUE *argv, VALUE self) {
  struct ncmenu_options *arg1 = (struct ncmenu_options *) 0 ;
  void *argp1 = 0 ;
  int res1 = 0 ;
  uint64_t result;
  VALUE vresult = Qnil;
  
  if ((argc < 0) || (argc > 0)) {
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
  }
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_ncmenu_options, 0 |  0 );
  if (!SWIG_IsOK(res1)) {
    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "struct ncmenu_options *","headerchannels", 1, self )); 
  }
  arg1 = (struct ncmenu_options *)(argp1);
  result = (uint64_t) ((arg1)->headerchannels);
  vresult = SWIG_From_unsigned_SS_long((unsigned long)(result));
  {
    if (vresult == Qnil) {
      vresult = rb_hash_new();
    }
    if (!RB_TYPE_P(vresult, T_HASH)) {
      VALUE temp = rb_hash_new();
      rb_hash_aset(temp, ID2SYM(rb_intern("return")), vresult);
      vresult = temp;
    }
    
    swig_type_info *ty = SWIG_TypeQuery("struct ncmenu_options *");
    if (!ty) ty = SWIGTYPE_p_ncmenu_options;
    
    VALUE obj = SWIG_NewPointerObj((void *)arg1, ty, 0);
    rb_hash_aset(vresult, ID2SYM(rb_intern("self")), obj);
  }
  return vresult;
fail:
  return Qnil;
}

#headerchannels=(*args) ⇒ Object

call-seq:

headerchannels=(x) -> uint64_t

Set new value for attribute.



57976
57977
57978
57979
57980
57981
57982
57983
57984
57985
57986
57987
57988
57989
57990
57991
57992
57993
57994
57995
57996
57997
57998
57999
58000
58001
58002
58003
58004
58005
58006
58007
58008
58009
58010
58011
58012
58013
58014
58015
58016
58017
58018
58019
# File 'ext/notcurses/src/notcurses_wrap.c', line 57976

SWIGINTERN VALUE
_wrap_NcmenuOptions_headerchannels_set(int argc, VALUE *argv, VALUE self) {
  struct ncmenu_options *arg1 = (struct ncmenu_options *) 0 ;
  uint64_t arg2 ;
  void *argp1 = 0 ;
  int res1 = 0 ;
  unsigned long val2 ;
  int ecode2 = 0 ;
  VALUE vresult = Qnil;
  
  if ((argc < 1) || (argc > 1)) {
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
  }
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_ncmenu_options, 0 |  0 );
  if (!SWIG_IsOK(res1)) {
    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "struct ncmenu_options *","headerchannels", 1, self )); 
  }
  arg1 = (struct ncmenu_options *)(argp1);
  ecode2 = SWIG_AsVal_unsigned_SS_long(argv[0], &val2);
  if (!SWIG_IsOK(ecode2)) {
    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "uint64_t","headerchannels", 2, argv[0] ));
  } 
  arg2 = (uint64_t)(val2);
  if (arg1) (arg1)->headerchannels = arg2;
  {
    if (vresult == Qnil) {
      vresult = rb_hash_new();
    }
    if (!RB_TYPE_P(vresult, T_HASH)) {
      VALUE temp = rb_hash_new();
      rb_hash_aset(temp, ID2SYM(rb_intern("return")), vresult);
      vresult = temp;
    }
    
    swig_type_info *ty = SWIG_TypeQuery("struct ncmenu_options *");
    if (!ty) ty = SWIGTYPE_p_ncmenu_options;
    
    VALUE obj = SWIG_NewPointerObj((void *)arg1, ty, 0);
    rb_hash_aset(vresult, ID2SYM(rb_intern("self")), obj);
  }
  return vresult;
fail:
  return Qnil;
}

#sectionchannels(*args) ⇒ Object

call-seq:

sectionchannels -> uint64_t

Get value of attribute.



58126
58127
58128
58129
58130
58131
58132
58133
58134
58135
58136
58137
58138
58139
58140
58141
58142
58143
58144
58145
58146
58147
58148
58149
58150
58151
58152
58153
58154
58155
58156
58157
58158
58159
58160
58161
58162
58163
# File 'ext/notcurses/src/notcurses_wrap.c', line 58126

SWIGINTERN VALUE
_wrap_NcmenuOptions_sectionchannels_get(int argc, VALUE *argv, VALUE self) {
  struct ncmenu_options *arg1 = (struct ncmenu_options *) 0 ;
  void *argp1 = 0 ;
  int res1 = 0 ;
  uint64_t result;
  VALUE vresult = Qnil;
  
  if ((argc < 0) || (argc > 0)) {
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
  }
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_ncmenu_options, 0 |  0 );
  if (!SWIG_IsOK(res1)) {
    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "struct ncmenu_options *","sectionchannels", 1, self )); 
  }
  arg1 = (struct ncmenu_options *)(argp1);
  result = (uint64_t) ((arg1)->sectionchannels);
  vresult = SWIG_From_unsigned_SS_long((unsigned long)(result));
  {
    if (vresult == Qnil) {
      vresult = rb_hash_new();
    }
    if (!RB_TYPE_P(vresult, T_HASH)) {
      VALUE temp = rb_hash_new();
      rb_hash_aset(temp, ID2SYM(rb_intern("return")), vresult);
      vresult = temp;
    }
    
    swig_type_info *ty = SWIG_TypeQuery("struct ncmenu_options *");
    if (!ty) ty = SWIGTYPE_p_ncmenu_options;
    
    VALUE obj = SWIG_NewPointerObj((void *)arg1, ty, 0);
    rb_hash_aset(vresult, ID2SYM(rb_intern("self")), obj);
  }
  return vresult;
fail:
  return Qnil;
}

#sectionchannels=(*args) ⇒ Object

call-seq:

sectionchannels=(x) -> uint64_t

Set new value for attribute.



58080
58081
58082
58083
58084
58085
58086
58087
58088
58089
58090
58091
58092
58093
58094
58095
58096
58097
58098
58099
58100
58101
58102
58103
58104
58105
58106
58107
58108
58109
58110
58111
58112
58113
58114
58115
58116
58117
58118
58119
58120
58121
58122
58123
# File 'ext/notcurses/src/notcurses_wrap.c', line 58080

SWIGINTERN VALUE
_wrap_NcmenuOptions_sectionchannels_set(int argc, VALUE *argv, VALUE self) {
  struct ncmenu_options *arg1 = (struct ncmenu_options *) 0 ;
  uint64_t arg2 ;
  void *argp1 = 0 ;
  int res1 = 0 ;
  unsigned long val2 ;
  int ecode2 = 0 ;
  VALUE vresult = Qnil;
  
  if ((argc < 1) || (argc > 1)) {
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
  }
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_ncmenu_options, 0 |  0 );
  if (!SWIG_IsOK(res1)) {
    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "struct ncmenu_options *","sectionchannels", 1, self )); 
  }
  arg1 = (struct ncmenu_options *)(argp1);
  ecode2 = SWIG_AsVal_unsigned_SS_long(argv[0], &val2);
  if (!SWIG_IsOK(ecode2)) {
    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "uint64_t","sectionchannels", 2, argv[0] ));
  } 
  arg2 = (uint64_t)(val2);
  if (arg1) (arg1)->sectionchannels = arg2;
  {
    if (vresult == Qnil) {
      vresult = rb_hash_new();
    }
    if (!RB_TYPE_P(vresult, T_HASH)) {
      VALUE temp = rb_hash_new();
      rb_hash_aset(temp, ID2SYM(rb_intern("return")), vresult);
      vresult = temp;
    }
    
    swig_type_info *ty = SWIG_TypeQuery("struct ncmenu_options *");
    if (!ty) ty = SWIGTYPE_p_ncmenu_options;
    
    VALUE obj = SWIG_NewPointerObj((void *)arg1, ty, 0);
    rb_hash_aset(vresult, ID2SYM(rb_intern("self")), obj);
  }
  return vresult;
fail:
  return Qnil;
}

#sectioncount(*args) ⇒ Object

call-seq:

sectioncount -> int

Get value of attribute.



57918
57919
57920
57921
57922
57923
57924
57925
57926
57927
57928
57929
57930
57931
57932
57933
57934
57935
57936
57937
57938
57939
57940
57941
57942
57943
57944
57945
57946
57947
57948
57949
57950
57951
57952
57953
57954
57955
# File 'ext/notcurses/src/notcurses_wrap.c', line 57918

SWIGINTERN VALUE
_wrap_NcmenuOptions_sectioncount_get(int argc, VALUE *argv, VALUE self) {
  struct ncmenu_options *arg1 = (struct ncmenu_options *) 0 ;
  void *argp1 = 0 ;
  int res1 = 0 ;
  int result;
  VALUE vresult = Qnil;
  
  if ((argc < 0) || (argc > 0)) {
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
  }
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_ncmenu_options, 0 |  0 );
  if (!SWIG_IsOK(res1)) {
    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "struct ncmenu_options *","sectioncount", 1, self )); 
  }
  arg1 = (struct ncmenu_options *)(argp1);
  result = (int) ((arg1)->sectioncount);
  vresult = SWIG_From_int((int)(result));
  {
    if (vresult == Qnil) {
      vresult = rb_hash_new();
    }
    if (!RB_TYPE_P(vresult, T_HASH)) {
      VALUE temp = rb_hash_new();
      rb_hash_aset(temp, ID2SYM(rb_intern("return")), vresult);
      vresult = temp;
    }
    
    swig_type_info *ty = SWIG_TypeQuery("struct ncmenu_options *");
    if (!ty) ty = SWIGTYPE_p_ncmenu_options;
    
    VALUE obj = SWIG_NewPointerObj((void *)arg1, ty, 0);
    rb_hash_aset(vresult, ID2SYM(rb_intern("self")), obj);
  }
  return vresult;
fail:
  return Qnil;
}

#sectioncount=(*args) ⇒ Object

call-seq:

sectioncount=(x) -> int

Set new value for attribute.



57872
57873
57874
57875
57876
57877
57878
57879
57880
57881
57882
57883
57884
57885
57886
57887
57888
57889
57890
57891
57892
57893
57894
57895
57896
57897
57898
57899
57900
57901
57902
57903
57904
57905
57906
57907
57908
57909
57910
57911
57912
57913
57914
57915
# File 'ext/notcurses/src/notcurses_wrap.c', line 57872

SWIGINTERN VALUE
_wrap_NcmenuOptions_sectioncount_set(int argc, VALUE *argv, VALUE self) {
  struct ncmenu_options *arg1 = (struct ncmenu_options *) 0 ;
  int arg2 ;
  void *argp1 = 0 ;
  int res1 = 0 ;
  int val2 ;
  int ecode2 = 0 ;
  VALUE vresult = Qnil;
  
  if ((argc < 1) || (argc > 1)) {
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
  }
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_ncmenu_options, 0 |  0 );
  if (!SWIG_IsOK(res1)) {
    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "struct ncmenu_options *","sectioncount", 1, self )); 
  }
  arg1 = (struct ncmenu_options *)(argp1);
  ecode2 = SWIG_AsVal_int(argv[0], &val2);
  if (!SWIG_IsOK(ecode2)) {
    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","sectioncount", 2, argv[0] ));
  } 
  arg2 = (int)(val2);
  if (arg1) (arg1)->sectioncount = arg2;
  {
    if (vresult == Qnil) {
      vresult = rb_hash_new();
    }
    if (!RB_TYPE_P(vresult, T_HASH)) {
      VALUE temp = rb_hash_new();
      rb_hash_aset(temp, ID2SYM(rb_intern("return")), vresult);
      vresult = temp;
    }
    
    swig_type_info *ty = SWIG_TypeQuery("struct ncmenu_options *");
    if (!ty) ty = SWIGTYPE_p_ncmenu_options;
    
    VALUE obj = SWIG_NewPointerObj((void *)arg1, ty, 0);
    rb_hash_aset(vresult, ID2SYM(rb_intern("self")), obj);
  }
  return vresult;
fail:
  return Qnil;
}

#sections(*args) ⇒ Object

call-seq:

sections -> NcmenuSection

Get value of attribute.



57802
57803
57804
57805
57806
57807
57808
57809
57810
57811
57812
57813
57814
57815
57816
57817
57818
57819
57820
57821
57822
57823
57824
57825
57826
57827
57828
57829
57830
57831
57832
57833
57834
57835
57836
57837
57838
57839
57840
57841
57842
57843
57844
57845
57846
57847
57848
57849
57850
57851
# File 'ext/notcurses/src/notcurses_wrap.c', line 57802

SWIGINTERN VALUE
_wrap_NcmenuOptions_sections_get(int argc, VALUE *argv, VALUE self) {
  struct ncmenu_options *arg1 = (struct ncmenu_options *) 0 ;
  void *argp1 = 0 ;
  int res1 = 0 ;
  struct ncmenu_section *result = 0 ;
  VALUE vresult = Qnil;
  
  if ((argc < 0) || (argc > 0)) {
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
  }
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_ncmenu_options, 0 |  0 );
  if (!SWIG_IsOK(res1)) {
    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "struct ncmenu_options *","sections", 1, self )); 
  }
  arg1 = (struct ncmenu_options *)(argp1);
  result = (struct ncmenu_section *) ((arg1)->sections);
  {
    VALUE hash = rb_hash_new();
    VALUE obj;
    
    if (strcmp("struct ncmenu_section *", "void") == 0) {
      obj = Qnil;
    } else {
      obj = SWIG_Ruby_NewPointerObj(result, SWIGTYPE_p_ncmenu_section, 0);
    }
    
    rb_hash_aset(hash, ID2SYM(rb_intern("return")), obj);
    vresult = hash;
  }
  {
    if (vresult == Qnil) {
      vresult = rb_hash_new();
    }
    if (!RB_TYPE_P(vresult, T_HASH)) {
      VALUE temp = rb_hash_new();
      rb_hash_aset(temp, ID2SYM(rb_intern("return")), vresult);
      vresult = temp;
    }
    
    swig_type_info *ty = SWIG_TypeQuery("struct ncmenu_options *");
    if (!ty) ty = SWIGTYPE_p_ncmenu_options;
    
    VALUE obj = SWIG_NewPointerObj((void *)arg1, ty, 0);
    rb_hash_aset(vresult, ID2SYM(rb_intern("self")), obj);
  }
  return vresult;
fail:
  return Qnil;
}

#sections=(*args) ⇒ Object

call-seq:

sections=(x) -> NcmenuSection

Set new value for attribute.



57739
57740
57741
57742
57743
57744
57745
57746
57747
57748
57749
57750
57751
57752
57753
57754
57755
57756
57757
57758
57759
57760
57761
57762
57763
57764
57765
57766
57767
57768
57769
57770
57771
57772
57773
57774
57775
57776
57777
57778
57779
57780
57781
57782
57783
57784
57785
57786
57787
57788
57789
57790
57791
57792
57793
57794
57795
57796
57797
57798
57799
# File 'ext/notcurses/src/notcurses_wrap.c', line 57739

SWIGINTERN VALUE
_wrap_NcmenuOptions_sections_set(int argc, VALUE *argv, VALUE self) {
  struct ncmenu_options *arg1 = (struct ncmenu_options *) 0 ;
  struct ncmenu_section *arg2 = (struct ncmenu_section *) 0 ;
  void *argp1 = 0 ;
  int res1 = 0 ;
  void *argp2 = 0 ;
  int res2 = 0 ;
  VALUE vresult = Qnil;
  
  if ((argc < 1) || (argc > 1)) {
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
  }
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_ncmenu_options, 0 |  0 );
  if (!SWIG_IsOK(res1)) {
    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "struct ncmenu_options *","sections", 1, self )); 
  }
  arg1 = (struct ncmenu_options *)(argp1);
  res2 = SWIG_ConvertPtr(argv[0], &argp2,SWIGTYPE_p_ncmenu_section, SWIG_POINTER_DISOWN |  0 );
  if (!SWIG_IsOK(res2)) {
    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "struct ncmenu_section *","sections", 2, argv[0] )); 
  }
  arg2 = (struct ncmenu_section *)(argp2);
  if (arg1) (arg1)->sections = arg2;
  vresult = rb_ary_new();
  {
    if (vresult == Qnil) {
      vresult = rb_hash_new();
    }
    if (!RB_TYPE_P(vresult, T_HASH)) {
      VALUE temp = rb_hash_new();
      rb_hash_aset(temp, ID2SYM(rb_intern("return")), vresult);
      vresult = temp;
    }
    
    swig_type_info *ty = SWIG_TypeQuery("struct ncmenu_options *");
    if (!ty) ty = SWIGTYPE_p_ncmenu_options;
    
    VALUE obj = SWIG_NewPointerObj((void *)arg1, ty, 0);
    rb_hash_aset(vresult, ID2SYM(rb_intern("self")), obj);
  }
  {
    if (vresult == Qnil) {
      vresult = rb_hash_new();
    }
    if (!RB_TYPE_P(vresult, T_HASH)) {
      VALUE temp = rb_hash_new();
      rb_hash_aset(temp, ID2SYM(rb_intern("return")), vresult);
      vresult = temp;
    }
    
    swig_type_info *ty = SWIG_TypeQuery("struct ncmenu_section *");
    if (!ty) ty = SWIGTYPE_p_ncmenu_section;
    
    VALUE obj = SWIG_NewPointerObj((void *)arg2, ty, 0);
    rb_hash_aset(vresult, ID2SYM(rb_intern("sections")), obj);
  }
  return vresult;
fail:
  return Qnil;
}