Skip to content

T monkeypatch thrift module#33

Closed
axos88 wants to merge 25 commits into
apache:masterfrom
whitepages:t_monkeypatch_thrift_module
Closed

T monkeypatch thrift module#33
axos88 wants to merge 25 commits into
apache:masterfrom
whitepages:t_monkeypatch_thrift_module

Conversation

@axos88
Copy link
Copy Markdown

@axos88 axos88 commented Jun 21, 2013

Added fastcall struct that may be used to call by supplying a C function pointer or by rb_funcall if the C fptr is unavailable.

use by initailizing the fastcall by either fastcall_init_ruby (use rb_funcall), or fastcall_init_c (use a C fptr), and the call using fastcall_call(fastcall_struct, object, parameters)

Drawback is that one parameter must be supplied, even if the needed parameters is 0, supply Qnil in this case.

Added a new function to the protocol layer API, named get_protocol_method_table, which - if implemented - will return a C protocol_method_table structure containing the fastcall objectc to call its API. This is used to prevent having to switch ro ruby and back to C when two communicating layers are both implemented in C.

Akos Vandra and others added 25 commits June 14, 2013 11:24
…e faster as it does not allocate a new ruby string each time
…ead by adding a get_method_table function to the layered protocol that can be used to retrieve a table of C function pointers to the API of the protocol layer
@axos88 axos88 closed this Jun 21, 2013
@axos88
Copy link
Copy Markdown
Author

axos88 commented Jun 21, 2013

Sorry, this was a mistake, a preliminary code review for our whitepages fork. Please ignore.

keynslug pushed a commit to keynslug/thrift that referenced this pull request Feb 27, 2017
…um_ref_in_typedef

BJ-76: Add struct and enum ref in typedef
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant