0
|
1 dyncall ruby bindings
|
1
|
2 Copyright 2007-2015 Tassilo Philipp
|
0
|
3
|
|
4
|
|
5 BUILD
|
|
6
|
|
7 Build and install this gem with:
|
2
|
8 (cd ../../../dyncall; make distclean) || (gem build rbdc.gemspec && gem install ../../../rbdc-*.gem)
|
0
|
9
|
|
10
|
|
11 SIGNATURE FORMAT
|
|
12
|
|
13 format: "xxxxx)y"
|
|
14
|
|
15 x is positional parameter-type charcode
|
|
16
|
|
17 'B' C++: bool <- Ruby: TrueClass, FalseClass, NilClass, Fixnum
|
|
18 'c' C: char <- Ruby: Fixnum
|
|
19 'C' C: unsigned char <- Ruby: Fixnum
|
|
20 's' C: short <- Ruby: Fixnum
|
|
21 'S' C: unsigned short <- Ruby: Fixnum
|
|
22 'i' C: int <- Ruby: Fixnum
|
|
23 'I' C: unsigned int <- Ruby: Fixnum
|
|
24 'j' C: long <- Ruby: Fixnum
|
|
25 'J' C: unsigned long <- Ruby: Fixnum
|
|
26 'l' C: long long <- Ruby: Fixnum
|
|
27 'L' C: unsigned long long <- Ruby: Fixnum
|
|
28 'f' C: float <- Ruby: Float
|
|
29 'd' C: double <- Ruby: Float
|
|
30 'p' C: void* <- Ruby: String (check if there are other pointer-convertible ruby types @@@)
|
|
31 'Z' C: void* <- Ruby: String
|
|
32
|
|
33 y is result-type charcode
|
|
34
|
|
35 'v' C: void -> Ruby: NilClass
|
|
36 'B' C: bool -> Ruby: TrueClass, FalseClass
|
|
37 'c' C: char -> Ruby: Fixnum
|
|
38 'C' C: unsigned char -> Ruby: Fixnum
|
|
39 's' C: short -> Ruby: Fixnum
|
|
40 'S' C: unsigned short -> Ruby: Fixnum
|
|
41 'i' C: int -> Ruby: Fixnum
|
|
42 'I' C: unsigned int -> Ruby: Fixnum
|
|
43 'j' C: long -> Ruby: Fixnum
|
|
44 'J' C: unsigned long -> Ruby: Fixnum
|
|
45 'l' C: long long -> Ruby: Fixnum
|
|
46 'L' C: unsigned long long -> Ruby: Fixnum
|
|
47 'f' C: float -> Ruby: Float
|
|
48 'd' C: double -> Ruby: Float
|
|
49 'p' C: void* -> unsupported at the moment @@@
|
|
50 'Z' C: void* -> Ruby: String
|
|
51
|
|
52
|
|
53 -> Note that signature suffixes used to indicate calling
|
|
54 -> conventions, are not supported yet! @@@
|