这篇教程C++ Data_Make_Struct函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中Data_Make_Struct函数的典型用法代码示例。如果您正苦于以下问题:C++ Data_Make_Struct函数的具体用法?C++ Data_Make_Struct怎么用?C++ Data_Make_Struct使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了Data_Make_Struct函数的29个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: rb_hps_allocstatic VALUErb_hps_alloc(VALUE klass){ hashpipe_status_t * p; VALUE v; v = Data_Make_Struct(klass, hashpipe_status_t, 0, free, p); memset(p, 0, sizeof(hashpipe_status_t)); return v;}
开发者ID:david-macmahon,项目名称:rb-hashpipe,代码行数:10,
示例2: allocatestatic VALUE allocate(VALUE klass) { VALUE obj; mysql_client_wrapper * wrapper; obj = Data_Make_Struct(klass, mysql_client_wrapper, rb_mysql_client_mark, rb_mysql_client_free, wrapper); wrapper->encoding = Qnil; wrapper->active = 0; wrapper->closed = 1; wrapper->client = (MYSQL*)malloc(sizeof(MYSQL)); return obj;}
开发者ID:heathd,项目名称:mysql2,代码行数:10,
示例3: memptr_allocatestatic VALUEmemptr_allocate(VALUE klass){ Pointer* p; VALUE obj = Data_Make_Struct(klass, Pointer, NULL, memptr_release, p); p->rbParent = Qnil; p->memory.flags = MEM_RD | MEM_WR; return obj;}
开发者ID:Rsoon,项目名称:rsoon.github.io,代码行数:10,
示例4: rb_gsl_sf_coulomb_wave_FG_estatic VALUE rb_gsl_sf_coulomb_wave_FG_e(VALUE obj, VALUE eta, VALUE x, VALUE L_F, VALUE k){ gsl_sf_result *F, *Fp, *G, *Gp; VALUE vF, vFp, vG, vGp; double exp_G, exp_F; int status; Need_Float(eta); Need_Float(x); Need_Float(L_F); CHECK_FIXNUM(k); vF = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, F); vFp = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, Fp); vG = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, G); vGp = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, Gp); status = gsl_sf_coulomb_wave_FG_e(NUM2DBL(eta), NUM2DBL(x), NUM2DBL(L_F), FIX2INT(k), F, Fp, G, Gp, &exp_F, &exp_G); return rb_ary_new3(7, vF, vFp, vG, vGp, rb_float_new(exp_F), rb_float_new(exp_G), INT2FIX(status));}
开发者ID:Zenexer,项目名称:rb-gsl,代码行数:19,
示例5: rb_gsl_sf_multiply_estatic VALUE rb_gsl_sf_multiply_e(VALUE obj, VALUE x, VALUE y){ gsl_sf_result *r; VALUE v; int status; Need_Float(x); Need_Float(y); v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, r); status = gsl_sf_multiply_e(NUM2DBL(x), NUM2DBL(y), r); return v;}
开发者ID:Fudge,项目名称:rb-gsl,代码行数:10,
示例6: rb_gsl_sf_lnchoose_estatic VALUE rb_gsl_sf_lnchoose_e(VALUE obj, VALUE n, VALUE m){ gsl_sf_result *rslt = NULL; VALUE v; int status; CHECK_FIXNUM(n); CHECK_FIXNUM(m); v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt); status = gsl_sf_lnchoose_e(FIX2INT(n), FIX2INT(m), rslt); return v;}
开发者ID:Fudge,项目名称:rb-gsl,代码行数:10,
示例7: symbol_allocatestatic VALUEsymbol_allocate(VALUE klass){ LibrarySymbol* sym; VALUE obj = Data_Make_Struct(klass, LibrarySymbol, NULL, -1, sym); sym->name = Qnil; sym->library = Qnil; sym->base.rbParent = Qnil; return obj;}
开发者ID:AndreasDattilo,项目名称:sample_app,代码行数:11,
示例8: rb_ldap_entry_newVALUErb_ldap_entry_new (LDAP * ldap, LDAPMessage * msg){ VALUE val; RB_LDAPENTRY_DATA *edata; val = Data_Make_Struct (rb_cLDAP_Entry, RB_LDAPENTRY_DATA, 0, rb_ldap_entry_free, edata); edata->ldap = ldap; edata->msg = msg; return val;}
开发者ID:mahlonsmith,项目名称:ruby-ldap,代码行数:11,
示例9: rb_ds_artist_allocstatic VALUErb_ds_artist_alloc (VALUE klass){ rb_ds_artist *artist; VALUE obj; obj = Data_Make_Struct(klass, rb_ds_artist, NULL, NULL, artist); return obj;}
开发者ID:Voxar,项目名称:spot,代码行数:11,
示例10: rb_ds_playlist_allocstatic VALUErb_ds_playlist_alloc (VALUE klass){ rb_ds_playlist *pls; VALUE obj; obj = Data_Make_Struct(klass, rb_ds_playlist, NULL, rb_ds_playlist_free, pls); return obj;}
开发者ID:Voxar,项目名称:spot,代码行数:11,
示例11: type_allocatestatic VALUEtype_allocate(VALUE klass){ Type* type; VALUE obj = Data_Make_Struct(klass, Type, NULL, -1, type); type->nativeType = -1; type->ffiType = &ffi_type_void; return obj;}
开发者ID:Flameeyes,项目名称:ffi,代码行数:11,
示例12: num_allocstatic VALUE num_alloc(VALUE klass) { decNumber self_struct, *self_ptr; decContext context; VALUE self; self_ptr = &self_struct; self = Data_Make_Struct(klass, decNumber, 0, free, self_ptr); decContextDefault(&context, DEC_INIT_BASE); (*self_ptr).bits = DECNAN; return self;}
开发者ID:rubypanther,项目名称:dec_number,代码行数:11,
示例13: rb_gsl_sf_pow_int_estatic VALUE rb_gsl_sf_pow_int_e(VALUE obj, VALUE x, VALUE n){ gsl_sf_result *rslt = NULL; VALUE v; int status; Need_Float(x); CHECK_FIXNUM(n); v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt); status = gsl_sf_pow_int_e(NUM2DBL(x), FIX2INT(n), rslt); return v;}
开发者ID:Fudge,项目名称:rb-gsl,代码行数:11,
示例14: rb_gsl_sf_lngamma_sgn_estatic VALUE rb_gsl_sf_lngamma_sgn_e(VALUE obj, VALUE x){ gsl_sf_result *rslt = NULL; VALUE v; int status; double sgn; Need_Float(x); v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt); status = gsl_sf_lngamma_sgn_e(NUM2DBL(x), rslt, &sgn); return rb_ary_new3(2, v, rb_float_new(sgn));}
开发者ID:Fudge,项目名称:rb-gsl,代码行数:11,
示例15: static_gedcom_date_newstatic VALUE static_gedcom_date_new( int argc, VALUE *argv, VALUE klass ){ char *s_date; int i_type; int rc; VALUE date; VALUE type; VALUE new_date; gedDATEVALUE_t parsed_date; gedDATEVALUE_t *temp; if( rb_scan_args( argc, argv, "11", &date, &type ) == 1 ) { i_type = gctDEFAULT; } else { i_type = FIX2INT( type ); } s_date = STR2CSTR( date ); rc = parseGEDCOMDate( s_date, &parsed_date, i_type ); if( rc != 0 ) { VALUE err_msg; err_msg = rb_str_new2( "format error at '" ); if( parsed_date.date1.flags & gfNONSTANDARD ) rb_str_cat( err_msg, parsed_date.date1.data.phrase, strlen( parsed_date.date1.data.phrase ) ); else rb_str_cat( err_msg, parsed_date.date2.data.phrase, strlen( parsed_date.date2.data.phrase ) ); rb_str_cat( err_msg, "'", 1 ); if( rb_block_given_p() ) { rb_yield( err_msg ); } else { rb_raise( eDateFormatException, STR2CSTR( err_msg ) ); } } new_date = Data_Make_Struct( klass, gedDATEVALUE_t, 0, 0, temp ); memcpy( temp, &parsed_date, sizeof( parsed_date ) ); return new_date;}
开发者ID:GunioRobot,项目名称:gedcom-ruby,代码行数:54,
示例16: cont_newstatic rb_context_t *cont_new(VALUE klass){ rb_context_t *cont; volatile VALUE contval; contval = Data_Make_Struct(klass, rb_context_t, cont_mark, cont_free, cont); cont->self = contval; cont_init(cont); return cont;}
开发者ID:srirammca53,项目名称:update_status,代码行数:11,
示例17: rb_ds_session_allocstatic VALUErb_ds_session_alloc (VALUE klass){ rb_ds_session *session; VALUE obj; obj = Data_Make_Struct(klass, rb_ds_session, NULL, rb_ds_session_free, session); return obj;}
开发者ID:porras,项目名称:despotify-ruby,代码行数:11,
示例18: rb_gsl_sf_lnchoose_estatic VALUE rb_gsl_sf_lnchoose_e(VALUE obj, VALUE n, VALUE m){ gsl_sf_result *rslt = NULL; VALUE v; // local variable "status" declared and set, but never used //int status; CHECK_FIXNUM(n); CHECK_FIXNUM(m); v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt); /*status =*/ gsl_sf_lnchoose_e(FIX2INT(n), FIX2INT(m), rslt); return v;}
开发者ID:Zenexer,项目名称:rb-gsl,代码行数:11,
示例19: solver_allocstatic VALUE solver_alloc(VALUE klass){ csolver *cslv; VALUE rslv; rslv = Data_Make_Struct(klass, csolver, NULL, solver_free, cslv); cslv->solver = wrap_solver_new(); cslv->result = NOT_SOLVED_YET; return rslv;}
开发者ID:PhilipCastiglione,项目名称:ruby-minisat,代码行数:11,
示例20: sbr_allocatestatic VALUEsbr_allocate(VALUE klass){ StructByReference* sbr; VALUE obj = Data_Make_Struct(klass, StructByReference, sbr_mark, -1, sbr); sbr->rbStructClass = Qnil; return obj;}
开发者ID:AndreasDattilo,项目名称:sample_app,代码行数:11,
示例21: thread_data_initstatic ThreadData*thread_data_init(void){ ThreadData* td; VALUE obj; obj = Data_Make_Struct(rb_cObject, ThreadData, NULL, -1, td); rb_thread_local_aset(rb_thread_current(), id_thread_data, obj); return td;}
开发者ID:7310510,项目名称:sample_app,代码行数:11,
示例22: memory_allocatestatic VALUEmemory_allocate(VALUE klass){ AbstractMemory* memory; VALUE obj; obj = Data_Make_Struct(klass, AbstractMemory, NULL, -1, memory); memory->ops = &rbffi_AbstractMemoryOps; memory->access = MEM_RD | MEM_WR; return obj;}
开发者ID:boof,项目名称:farmfacts,代码行数:11,
示例23: pg_typemap_s_allocatestatic VALUEpg_typemap_s_allocate( VALUE klass ){ VALUE self; t_typemap *this; self = Data_Make_Struct( klass, t_typemap, NULL, -1, this ); this->funcs = pg_typemap_funcs; return self;}
开发者ID:curseoff,项目名称:ruby-pg,代码行数:11,
示例24: allocatestatic VALUE allocate(VALUE klass) { VALUE obj; tinytds_client_wrapper *cwrap; obj = Data_Make_Struct(klass, tinytds_client_wrapper, rb_tinytds_client_mark, rb_tinytds_client_free, cwrap); cwrap->closed = 1; cwrap->charset = Qnil; cwrap->userdata = malloc(sizeof(tinytds_client_userdata)); cwrap->userdata->closed = 1; rb_tinytds_client_reset_userdata(cwrap->userdata); return obj;}
开发者ID:calonso-conabio,项目名称:tiny_tds,代码行数:11,
示例25: struct_allocatestatic VALUEstruct_allocate(VALUE klass){ Struct* s; VALUE obj = Data_Make_Struct(klass, Struct, struct_mark, struct_free, s); s->rbPointer = Qnil; s->rbLayout = Qnil; return obj;}
开发者ID:mjaric,项目名称:ffi,代码行数:11,
示例26: struct_field_allocatestatic VALUEstruct_field_allocate(VALUE klass){ StructField* field; VALUE obj; obj = Data_Make_Struct(klass, StructField, struct_field_mark, -1, field); field->rbType = Qnil; field->rbName = Qnil; return obj;}
开发者ID:Bill-Affinity,项目名称:sample_app,代码行数:12,
示例27: allocatestatic VALUE allocate(VALUE klass){ MYSQL * client; return Data_Make_Struct( klass, MYSQL, NULL, rb_mysql_client_free, client );}
开发者ID:foobargem,项目名称:mysql2,代码行数:12,
示例28: pg_composite_decoder_allocatestatic VALUEpg_composite_decoder_allocate( VALUE klass ){ t_pg_composite_coder *this; VALUE self = Data_Make_Struct( klass, t_pg_composite_coder, NULL, -1, this ); pg_coder_init_decoder( self ); this->elem = NULL; this->needs_quotation = 1; this->delimiter = ','; rb_iv_set( self, "@elements_type", Qnil ); return self;}
开发者ID:bpaysen,项目名称:simplecodecasts_saas,代码行数:12,
示例29: inline_array_allocatestatic VALUEinline_array_allocate(VALUE klass){ InlineArray* array; VALUE obj; obj = Data_Make_Struct(klass, InlineArray, inline_array_mark, -1, array); array->rbField = Qnil; array->rbMemory = Qnil; return obj;}
开发者ID:mjaric,项目名称:ffi,代码行数:12,
注:本文中的Data_Make_Struct函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ Data_Wrap_Struct函数代码示例 C++ Data_Get_Struct函数代码示例 |