php-internal-docs 8.4.8
Unofficial docs for php/php-src
Loading...
Searching...
No Matches
ffi.stub.php
Go to the documentation of this file.
1<?php
2
4
5namespace {
7 final class FFI
8 {
10 public const int __BIGGEST_ALIGNMENT__ = UNKNOWN;
11
12 public static function cdef(string $code = "", ?string $lib = null): FFI {}
13
14 public static function load(string $filename): ?FFI {}
15
16 public static function scope(string $name): FFI {}
17
18 public static function new(FFI\CType|string $type, bool $owned = true, bool $persistent = false): FFI\CData {}
19
21 public static function free(FFI\CData $ptr): void {}
22
27 public static function cast(FFI\CType|string $type, $ptr): FFI\CData {}
28
29 public static function type(string $type): FFI\CType {}
30
32 public static function typeof(FFI\CData $ptr): FFI\CType {}
33
34 public static function arrayType(FFI\CType $type, array $dimensions): FFI\CType {}
35
37 public static function addr(FFI\CData $ptr): FFI\CData {}
38
40 public static function sizeof(FFI\CData|FFI\CType $ptr): int {}
41
43 public static function alignof(FFI\CData|FFI\CType $ptr): int {}
44
50 public static function memcpy(FFI\CData $to, $from, int $size): void {}
51
58 public static function memcmp($ptr1, $ptr2, int $size): int {}
59
61 public static function memset(FFI\CData $ptr, int $value, int $size): void {}
62
64 public static function string(FFI\CData $ptr, ?int $size = null): string {}
65
67 public static function isNull(FFI\CData $ptr): bool {}
68 }
69
70}
71
72namespace FFI {
73
75 final class CData {
76 }
77
79 final class CType {
81 public const int TYPE_VOID = UNKNOWN;
83 public const int TYPE_FLOAT = UNKNOWN;
85 public const int TYPE_DOUBLE = UNKNOWN;
86#ifdef HAVE_LONG_DOUBLE
88 public const int TYPE_LONGDOUBLE = UNKNOWN;
89#endif
91 public const int TYPE_UINT8 = UNKNOWN;
93 public const int TYPE_SINT8 = UNKNOWN;
95 public const int TYPE_UINT16 = UNKNOWN;
97 public const int TYPE_SINT16 = UNKNOWN;
99 public const int TYPE_UINT32 = UNKNOWN;
101 public const int TYPE_SINT32 = UNKNOWN;
103 public const int TYPE_UINT64 = UNKNOWN;
105 public const int TYPE_SINT64 = UNKNOWN;
107 public const int TYPE_ENUM = UNKNOWN;
109 public const int TYPE_BOOL = UNKNOWN;
111 public const int TYPE_CHAR = UNKNOWN;
113 public const int TYPE_POINTER = UNKNOWN;
115 public const int TYPE_FUNC = UNKNOWN;
117 public const int TYPE_ARRAY = UNKNOWN;
119 public const int TYPE_STRUCT = UNKNOWN;
120
122 public const int ATTR_CONST = UNKNOWN;
124 public const int ATTR_INCOMPLETE_TAG = UNKNOWN;
126 public const int ATTR_VARIADIC = UNKNOWN;
128 public const int ATTR_INCOMPLETE_ARRAY = UNKNOWN;
130 public const int ATTR_VLA = UNKNOWN;
132 public const int ATTR_UNION = UNKNOWN;
134 public const int ATTR_PACKED = UNKNOWN;
136 public const int ATTR_MS_STRUCT = UNKNOWN;
138 public const int ATTR_GCC_STRUCT = UNKNOWN;
139
141 public const int ABI_DEFAULT = UNKNOWN;
143 public const int ABI_CDECL = UNKNOWN;
145 public const int ABI_FASTCALL = UNKNOWN;
147 public const int ABI_THISCALL = UNKNOWN;
149 public const int ABI_STDCALL = UNKNOWN;
151 public const int ABI_PASCAL = UNKNOWN;
153 public const int ABI_REGISTER = UNKNOWN;
155 public const int ABI_MS = UNKNOWN;
157 public const int ABI_SYSV = UNKNOWN;
159 public const int ABI_VECTORCALL = UNKNOWN;
160
161 public function getName(): string {}
162
163 public function getKind(): int {}
164 public function getSize(): int {}
165 public function getAlignment(): int {}
166 public function getAttributes(): int {}
167
168 public function getEnumKind(): int {}
169
171 public function getArrayLength(): int {}
172
174
175 public function getStructFieldNames(): array {}
176 public function getStructFieldOffset(string $name): int {}
178
179 public function getFuncABI(): int {}
182 public function getFuncParameterType(int $index): CType {}
183 }
184
185 class Exception extends \Error {
186 }
187
188 final class ParserException extends Exception {
189 }
190}
const int ATTR_INCOMPLETE_TAG
Definition ffi.stub.php:124
const int ATTR_VLA
Definition ffi.stub.php:130
const int ABI_PASCAL
Definition ffi.stub.php:151
getFuncReturnType()
Definition ffi.stub.php:180
const int TYPE_UINT64
Definition ffi.stub.php:103
const int TYPE_CHAR
Definition ffi.stub.php:111
const int TYPE_LONGDOUBLE
Definition ffi.stub.php:88
const int ABI_REGISTER
Definition ffi.stub.php:153
const int TYPE_ENUM
Definition ffi.stub.php:107
const int ABI_THISCALL
Definition ffi.stub.php:147
const int TYPE_VOID
Definition ffi.stub.php:81
const int TYPE_DOUBLE
Definition ffi.stub.php:85
const int ABI_STDCALL
Definition ffi.stub.php:149
const int ATTR_INCOMPLETE_ARRAY
Definition ffi.stub.php:128
const int TYPE_SINT64
Definition ffi.stub.php:105
getAttributes()
Definition ffi.stub.php:166
const int TYPE_SINT16
Definition ffi.stub.php:97
getArrayLength()
Definition ffi.stub.php:171
const int ABI_DEFAULT
Definition ffi.stub.php:141
const int TYPE_STRUCT
Definition ffi.stub.php:119
const int TYPE_SINT32
Definition ffi.stub.php:101
const int TYPE_BOOL
Definition ffi.stub.php:109
const int ABI_VECTORCALL
Definition ffi.stub.php:159
const int ATTR_UNION
Definition ffi.stub.php:132
const int TYPE_SINT8
Definition ffi.stub.php:93
getFuncParameterType(int $index)
Definition ffi.stub.php:182
const int TYPE_FUNC
Definition ffi.stub.php:115
const int TYPE_ARRAY
Definition ffi.stub.php:117
const int TYPE_UINT8
Definition ffi.stub.php:91
const int TYPE_POINTER
Definition ffi.stub.php:113
const int ABI_CDECL
Definition ffi.stub.php:143
const int ABI_FASTCALL
Definition ffi.stub.php:145
const int ATTR_VARIADIC
Definition ffi.stub.php:126
const int TYPE_UINT16
Definition ffi.stub.php:95
const int ATTR_PACKED
Definition ffi.stub.php:134
const int ATTR_MS_STRUCT
Definition ffi.stub.php:136
getFuncParameterCount()
Definition ffi.stub.php:181
const int TYPE_UINT32
Definition ffi.stub.php:99
getArrayElementType()
Definition ffi.stub.php:170
const int TYPE_FLOAT
Definition ffi.stub.php:83
getPointerType()
Definition ffi.stub.php:173
getStructFieldOffset(string $name)
Definition ffi.stub.php:176
const int ABI_MS
Definition ffi.stub.php:155
const int ABI_SYSV
Definition ffi.stub.php:157
const int ATTR_GCC_STRUCT
Definition ffi.stub.php:138
getStructFieldType(string $name)
Definition ffi.stub.php:177
getStructFieldNames()
Definition ffi.stub.php:175
const int ATTR_CONST
Definition ffi.stub.php:122
static load(string $filename)
Definition ffi.stub.php:14
static scope(string $name)
Definition ffi.stub.php:16
static alignof(FFI\CData|FFI\CType $ptr)
Definition ffi.stub.php:43
static arrayType(FFI\CType $type, array $dimensions)
Definition ffi.stub.php:34
static memcmp($ptr1, $ptr2, int $size)
Definition ffi.stub.php:58
const int __BIGGEST_ALIGNMENT__
Definition ffi.stub.php:10
static free(FFI\CData $ptr)
Definition ffi.stub.php:21
static addr(FFI\CData $ptr)
Definition ffi.stub.php:37
static new(FFI\CType|string $type, bool $owned=true, bool $persistent=false)
Definition ffi.stub.php:18
static sizeof(FFI\CData|FFI\CType $ptr)
Definition ffi.stub.php:40
static typeof(FFI\CData $ptr)
Definition ffi.stub.php:32
static cdef(string $code="", ?string $lib=null)
Definition ffi.stub.php:12
static type(string $type)
Definition ffi.stub.php:29
static cast(FFI\CType|string $type, $ptr)
Definition ffi.stub.php:27
static memset(FFI\CData $ptr, int $value, int $size)
Definition ffi.stub.php:61
static memcpy(FFI\CData $to, $from, int $size)
Definition ffi.stub.php:50
static string(FFI\CData $ptr, ?int $size=null)
Definition ffi.stub.php:64
static isNull(FFI\CData $ptr)
Definition ffi.stub.php:67
$filename
Definition create.php:9
ZEND_API void(ZEND_FASTCALL *zend_touch_vm_stack_data)(void *vm_stack_data)
function(EX_VAR(opline->result.var))