lief 0.16.7__cp314-cp314-macosx_11_0_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of lief might be problematic. Click here for more details.

@@ -0,0 +1,32 @@
1
+ from typing import Iterator, Optional, Union
2
+
3
+ import lief.assembly.x86
4
+
5
+
6
+ class Immediate(lief.assembly.x86.Operand):
7
+ @property
8
+ def value(self) -> int: ...
9
+
10
+ class Register(lief.assembly.x86.Operand):
11
+ @property
12
+ def value(self) -> lief.assembly.x86.REG: ...
13
+
14
+ class Memory(lief.assembly.x86.Operand):
15
+ @property
16
+ def base(self) -> lief.assembly.x86.REG: ...
17
+
18
+ @property
19
+ def scaled_register(self) -> lief.assembly.x86.REG: ...
20
+
21
+ @property
22
+ def segment_register(self) -> lief.assembly.x86.REG: ...
23
+
24
+ @property
25
+ def scale(self) -> int: ...
26
+
27
+ @property
28
+ def displacement(self) -> int: ...
29
+
30
+ class PCRelative(lief.assembly.x86.Operand):
31
+ @property
32
+ def value(self) -> int: ...
lief/dsc/__init__.pyi ADDED
@@ -0,0 +1,222 @@
1
+ from collections.abc import Sequence
2
+ import enum
3
+ import os
4
+ from typing import Iterator, Optional, Union, overload
5
+
6
+ import lief
7
+ import lief.MachO
8
+ import lief.assembly
9
+
10
+
11
+ @overload
12
+ def enable_cache() -> bool: ...
13
+
14
+ @overload
15
+ def enable_cache(target_cache_dir: str) -> bool: ...
16
+
17
+ class DyldSharedCache:
18
+ class VERSION(enum.Enum):
19
+ UNKNOWN = 0
20
+
21
+ DYLD_95_3 = 1
22
+
23
+ DYLD_195_5 = 2
24
+
25
+ DYLD_239_3 = 3
26
+
27
+ DYLD_360_14 = 4
28
+
29
+ DYLD_421_1 = 5
30
+
31
+ DYLD_832_7_1 = 6
32
+
33
+ DYLD_940 = 7
34
+
35
+ DYLD_1042_1 = 8
36
+
37
+ UNRELEASED = 9
38
+
39
+ class PLATFORM(enum.Enum):
40
+ UNKNOWN = 0
41
+
42
+ MACOS = 1
43
+
44
+ IOS = 2
45
+
46
+ TVOS = 3
47
+
48
+ WATCHOS = 4
49
+
50
+ BRIDGEOS = 5
51
+
52
+ IOSMAC = 6
53
+
54
+ IOS_SIMULATOR = 7
55
+
56
+ TVOS_SIMULATOR = 8
57
+
58
+ WATCHOS_SIMULATOR = 9
59
+
60
+ DRIVERKIT = 10
61
+
62
+ VISIONOS = 11
63
+
64
+ VISIONOS_SIMULATOR = 12
65
+
66
+ FIRMWARE = 13
67
+
68
+ SEPOS = 14
69
+
70
+ ANY = 4294967295
71
+
72
+ class ARCH(enum.Enum):
73
+ UNKNOWN = 0
74
+
75
+ I386 = 1
76
+
77
+ X86_64 = 2
78
+
79
+ X86_64H = 3
80
+
81
+ ARMV5 = 4
82
+
83
+ ARMV6 = 5
84
+
85
+ ARMV7 = 6
86
+
87
+ ARM64 = 7
88
+
89
+ ARM64E = 8
90
+
91
+ @staticmethod
92
+ def from_path(path: str, arch: str = '') -> Optional[DyldSharedCache]: ...
93
+
94
+ @staticmethod
95
+ def from_files(files: Sequence[str]) -> Optional[DyldSharedCache]: ...
96
+
97
+ @property
98
+ def filename(self) -> str: ...
99
+
100
+ @property
101
+ def version(self) -> DyldSharedCache.VERSION: ...
102
+
103
+ @property
104
+ def filepath(self) -> str: ...
105
+
106
+ @property
107
+ def load_address(self) -> int: ...
108
+
109
+ @property
110
+ def arch_name(self) -> str: ...
111
+
112
+ @property
113
+ def platform(self) -> DyldSharedCache.PLATFORM: ...
114
+
115
+ @property
116
+ def arch(self) -> DyldSharedCache.ARCH: ...
117
+
118
+ @property
119
+ def has_subcaches(self) -> bool: ...
120
+
121
+ def find_lib_from_va(self, virtual_address: int) -> Optional[Dylib]: ...
122
+
123
+ def find_lib_from_path(self, path: str) -> Optional[Dylib]: ...
124
+
125
+ def find_lib_from_name(self, name: str) -> Optional[Dylib]: ...
126
+
127
+ @property
128
+ def libraries(self) -> Sequence[Optional[Dylib]]: ...
129
+
130
+ @property
131
+ def mapping_info(self) -> Sequence[Optional[MappingInfo]]: ...
132
+
133
+ @property
134
+ def subcaches(self) -> Sequence[Optional[SubCache]]: ...
135
+
136
+ def get_content_from_va(self, addr: int, size: int) -> bytes: ...
137
+
138
+ def cache_for_address(self, address: int) -> Optional[DyldSharedCache]: ...
139
+
140
+ @property
141
+ def main_cache(self) -> Optional[DyldSharedCache]: ...
142
+
143
+ def find_subcache(self, filename: str) -> Optional[DyldSharedCache]: ...
144
+
145
+ def va_to_offset(self, virtual_address: int) -> Union[int, lief.lief_errors]: ...
146
+
147
+ def disassemble(self, arg: int, /) -> Iterator[Optional[lief.assembly.Instruction]]: ...
148
+
149
+ def enable_caching(self, target_dir: str) -> None: ...
150
+
151
+ def flush_cache(self) -> None: ...
152
+
153
+ @overload
154
+ def load(files: Sequence[str]) -> Optional[DyldSharedCache]: ...
155
+
156
+ @overload
157
+ def load(path: os.PathLike, arch: str = '') -> Optional[DyldSharedCache]: ...
158
+
159
+ class Dylib:
160
+ class extract_opt_t:
161
+ def __init__(self) -> None: ...
162
+
163
+ pack: bool
164
+
165
+ fix_branches: bool
166
+
167
+ fix_memory: bool
168
+
169
+ fix_relocations: bool
170
+
171
+ fix_objc: bool
172
+
173
+ create_dyld_chained_fixup_cmd: bool
174
+
175
+ @property
176
+ def path(self) -> str: ...
177
+
178
+ @property
179
+ def address(self) -> int: ...
180
+
181
+ @property
182
+ def modtime(self) -> int: ...
183
+
184
+ @property
185
+ def inode(self) -> int: ...
186
+
187
+ @property
188
+ def padding(self) -> int: ...
189
+
190
+ def get(self, opt: Dylib.extract_opt_t = ...) -> Optional[lief.MachO.Binary]: ...
191
+
192
+ class SubCache:
193
+ @property
194
+ def uuid(self) -> list[int]: ...
195
+
196
+ @property
197
+ def vm_offset(self) -> int: ...
198
+
199
+ @property
200
+ def suffix(self) -> str: ...
201
+
202
+ @property
203
+ def cache(self) -> Optional[DyldSharedCache]: ...
204
+
205
+ class MappingInfo:
206
+ @property
207
+ def address(self) -> int: ...
208
+
209
+ @property
210
+ def size(self) -> int: ...
211
+
212
+ @property
213
+ def end_address(self) -> int: ...
214
+
215
+ @property
216
+ def file_offset(self) -> int: ...
217
+
218
+ @property
219
+ def max_prot(self) -> int: ...
220
+
221
+ @property
222
+ def init_prot(self) -> int: ...
@@ -0,0 +1,293 @@
1
+ import enum
2
+ from typing import Iterator, Optional, Union, overload
3
+
4
+ from . import parameters as parameters, types as types
5
+ import lief
6
+ import lief.assembly
7
+
8
+
9
+ def load(path: str) -> Optional[DebugInfo]: ...
10
+
11
+ class Scope:
12
+ class TYPE(enum.Enum):
13
+ UNKNOWN = 0
14
+
15
+ UNION = 1
16
+
17
+ CLASS = 2
18
+
19
+ STRUCT = 3
20
+
21
+ NAMESPACE = 4
22
+
23
+ FUNCTION = 5
24
+
25
+ COMPILATION_UNIT = 6
26
+
27
+ @property
28
+ def name(self) -> str: ...
29
+
30
+ @property
31
+ def parent(self) -> Optional[Scope]: ...
32
+
33
+ @property
34
+ def type(self) -> Scope.TYPE: ...
35
+
36
+ def chained(self, sep: str = '::') -> str: ...
37
+
38
+ class Type:
39
+ class KIND(enum.Enum):
40
+ UNKNOWN = 0
41
+
42
+ UNSPECIFIED = 1
43
+
44
+ BASE = 2
45
+
46
+ CONST_KIND = 3
47
+
48
+ CLASS = 4
49
+
50
+ ARRAY = 5
51
+
52
+ POINTER = 6
53
+
54
+ STRUCT = 7
55
+
56
+ UNION = 8
57
+
58
+ TYPEDEF = 9
59
+
60
+ REF = 10
61
+
62
+ SET_TYPE = 11
63
+
64
+ STRING = 12
65
+
66
+ SUBROUTINE = 13
67
+
68
+ POINTER_MEMBER = 14
69
+
70
+ PACKED = 15
71
+
72
+ FILE = 16
73
+
74
+ THROWN = 17
75
+
76
+ VOLATILE = 18
77
+
78
+ RESTRICT = 19
79
+
80
+ INTERFACE = 20
81
+
82
+ SHARED = 21
83
+
84
+ RVALREF = 22
85
+
86
+ TEMPLATE_ALIAS = 23
87
+
88
+ COARRAY = 24
89
+
90
+ DYNAMIC = 25
91
+
92
+ ATOMIC = 26
93
+
94
+ IMMUTABLE = 27
95
+
96
+ ENUM = 28
97
+
98
+ @property
99
+ def kind(self) -> Type.KIND: ...
100
+
101
+ @property
102
+ def name(self) -> Optional[str]: ...
103
+
104
+ @property
105
+ def size(self) -> Optional[int]: ...
106
+
107
+ @property
108
+ def location(self) -> lief.debug_location_t: ...
109
+
110
+ @property
111
+ def is_unspecified(self) -> bool: ...
112
+
113
+ @property
114
+ def scope(self) -> Optional[Scope]: ...
115
+
116
+ class Variable:
117
+ @property
118
+ def name(self) -> str: ...
119
+
120
+ @property
121
+ def linkage_name(self) -> str: ...
122
+
123
+ @property
124
+ def address(self) -> Optional[int]: ...
125
+
126
+ @property
127
+ def size(self) -> Optional[int]: ...
128
+
129
+ @property
130
+ def is_constexpr(self) -> bool: ...
131
+
132
+ @property
133
+ def debug_location(self) -> lief.debug_location_t: ...
134
+
135
+ @property
136
+ def type(self) -> Optional[Type]: ...
137
+
138
+ @property
139
+ def scope(self) -> Optional[Scope]: ...
140
+
141
+ class Function:
142
+ @property
143
+ def name(self) -> str: ...
144
+
145
+ @property
146
+ def linkage_name(self) -> str: ...
147
+
148
+ @property
149
+ def address(self) -> Optional[int]: ...
150
+
151
+ @property
152
+ def variables(self) -> Iterator[Optional[Variable]]: ...
153
+
154
+ @property
155
+ def is_artificial(self) -> bool: ...
156
+
157
+ @property
158
+ def is_external(self) -> bool: ...
159
+
160
+ @property
161
+ def size(self) -> int: ...
162
+
163
+ @property
164
+ def ranges(self) -> list[lief.range_t]: ...
165
+
166
+ @property
167
+ def debug_location(self) -> lief.debug_location_t: ...
168
+
169
+ @property
170
+ def type(self) -> Optional[Type]: ...
171
+
172
+ @property
173
+ def parameters(self) -> list[Optional[Parameter]]: ...
174
+
175
+ @property
176
+ def thrown_types(self) -> list[Optional[Type]]: ...
177
+
178
+ @property
179
+ def scope(self) -> Optional[Scope]: ...
180
+
181
+ @property
182
+ def instructions(self) -> Iterator[Optional[lief.assembly.Instruction]]: ...
183
+
184
+ class Parameter:
185
+ @property
186
+ def name(self) -> str: ...
187
+
188
+ @property
189
+ def type(self) -> Optional[Type]: ...
190
+
191
+ class CompilationUnit:
192
+ class Language:
193
+ class LANG(enum.Enum):
194
+ @staticmethod
195
+ def from_value(arg: int, /) -> CompilationUnit.Language.LANG: ...
196
+
197
+ def __eq__(self, arg, /) -> bool: ...
198
+
199
+ def __ne__(self, arg, /) -> bool: ...
200
+
201
+ def __int__(self) -> int: ...
202
+
203
+ UNKNOWN = 0
204
+
205
+ C = 1
206
+
207
+ CPP = 2
208
+
209
+ RUST = 3
210
+
211
+ DART = 4
212
+
213
+ MODULA = 5
214
+
215
+ FORTRAN = 6
216
+
217
+ SWIFT = 7
218
+
219
+ D = 8
220
+
221
+ JAVA = 9
222
+
223
+ COBOL = 10
224
+
225
+ lang: CompilationUnit.Language.LANG
226
+
227
+ version: int
228
+
229
+ @property
230
+ def name(self) -> str: ...
231
+
232
+ @property
233
+ def producer(self) -> str: ...
234
+
235
+ @property
236
+ def compilation_dir(self) -> str: ...
237
+
238
+ @property
239
+ def language(self) -> CompilationUnit.Language: ...
240
+
241
+ @property
242
+ def low_address(self) -> int: ...
243
+
244
+ @property
245
+ def high_address(self) -> int: ...
246
+
247
+ @property
248
+ def size(self) -> int: ...
249
+
250
+ @property
251
+ def ranges(self) -> list[lief.range_t]: ...
252
+
253
+ @overload
254
+ def find_function(self, name: str) -> Optional[Function]: ...
255
+
256
+ @overload
257
+ def find_function(self, addr: int) -> Optional[Function]: ...
258
+
259
+ @overload
260
+ def find_variable(self, addr: int) -> Optional[Variable]: ...
261
+
262
+ @overload
263
+ def find_variable(self, name: str) -> Optional[Variable]: ...
264
+
265
+ @property
266
+ def types(self) -> Iterator[Optional[Type]]: ...
267
+
268
+ @property
269
+ def functions(self) -> Iterator[Optional[Function]]: ...
270
+
271
+ @property
272
+ def imported_functions(self) -> Iterator[Optional[Function]]: ...
273
+
274
+ @property
275
+ def variables(self) -> Iterator[Optional[Variable]]: ...
276
+
277
+ class DebugInfo(lief.DebugInfo):
278
+ @overload
279
+ def find_function(self, name: str) -> Optional[Function]: ...
280
+
281
+ @overload
282
+ def find_function(self, addr: int) -> Optional[Function]: ...
283
+
284
+ @overload
285
+ def find_variable(self, addr: int) -> Optional[Variable]: ...
286
+
287
+ @overload
288
+ def find_variable(self, name: str) -> Optional[Variable]: ...
289
+
290
+ def find_type(self, name: str) -> Optional[Type]: ...
291
+
292
+ @property
293
+ def compilation_units(self) -> Iterator[Optional[CompilationUnit]]: ...
@@ -0,0 +1,14 @@
1
+ from typing import Iterator, Optional, Union
2
+
3
+ import lief.dwarf
4
+
5
+
6
+ class Formal(lief.dwarf.Parameter):
7
+ @property
8
+ def type(self) -> Optional[lief.dwarf.Type]: ...
9
+
10
+ class TemplateValue(lief.dwarf.Parameter):
11
+ pass
12
+
13
+ class TemplateType(lief.dwarf.Parameter):
14
+ pass
@@ -0,0 +1,167 @@
1
+ import enum
2
+ from typing import Iterator, Optional, Union as _Union
3
+
4
+ import lief.dwarf
5
+
6
+
7
+ class ClassLike(lief.dwarf.Type):
8
+ class Member:
9
+ @property
10
+ def name(self) -> str: ...
11
+
12
+ @property
13
+ def type(self) -> Optional[lief.dwarf.Type]: ...
14
+
15
+ @property
16
+ def is_external(self) -> bool: ...
17
+
18
+ @property
19
+ def is_declaration(self) -> bool: ...
20
+
21
+ @property
22
+ def offset(self) -> Optional[int]: ...
23
+
24
+ @property
25
+ def bit_offset(self) -> Optional[int]: ...
26
+
27
+ @property
28
+ def members(self) -> list[ClassLike.Member]: ...
29
+
30
+ def find_member(self, offset: int) -> Optional[ClassLike.Member]: ...
31
+
32
+ @property
33
+ def functions(self) -> Iterator[Optional[lief.dwarf.Function]]: ...
34
+
35
+ class Structure(ClassLike):
36
+ pass
37
+
38
+ class Class(ClassLike):
39
+ pass
40
+
41
+ class Union(ClassLike):
42
+ pass
43
+
44
+ class Packed(ClassLike):
45
+ pass
46
+
47
+ class Pointer(lief.dwarf.Type):
48
+ @property
49
+ def underlying_type(self) -> lief.dwarf.Type: ...
50
+
51
+ class Const(lief.dwarf.Type):
52
+ @property
53
+ def underlying_type(self) -> lief.dwarf.Type: ...
54
+
55
+ class Base(lief.dwarf.Type):
56
+ class ENCODING(enum.Enum):
57
+ NONE = 0
58
+
59
+ SIGNED = 1
60
+
61
+ SIGNED_CHAR = 2
62
+
63
+ UNSIGNED = 3
64
+
65
+ UNSIGNED_CHAR = 4
66
+
67
+ FLOAT = 5
68
+
69
+ BOOLEAN = 6
70
+
71
+ ADDRESS = 7
72
+
73
+ @property
74
+ def encoding(self) -> Base.ENCODING: ...
75
+
76
+ class Array(lief.dwarf.Type):
77
+ class size_info_t:
78
+ @property
79
+ def type(self) -> lief.dwarf.Type: ...
80
+
81
+ @property
82
+ def name(self) -> str: ...
83
+
84
+ @property
85
+ def size(self) -> int: ...
86
+
87
+ @property
88
+ def underlying_type(self) -> lief.dwarf.Type: ...
89
+
90
+ @property
91
+ def size_info(self) -> Array.size_info_t: ...
92
+
93
+ class Typedef(lief.dwarf.Type):
94
+ @property
95
+ def underlying_type(self) -> lief.dwarf.Type: ...
96
+
97
+ class Atomic(lief.dwarf.Type):
98
+ @property
99
+ def underlying_type(self) -> lief.dwarf.Type: ...
100
+
101
+ class Coarray(lief.dwarf.Type):
102
+ pass
103
+
104
+ class Dynamic(lief.dwarf.Type):
105
+ pass
106
+
107
+ class Enum(lief.dwarf.Type):
108
+ pass
109
+
110
+ class File(lief.dwarf.Type):
111
+ pass
112
+
113
+ class Immutable(lief.dwarf.Type):
114
+ @property
115
+ def underlying_type(self) -> lief.dwarf.Type: ...
116
+
117
+ class Interface(lief.dwarf.Type):
118
+ pass
119
+
120
+ class PointerToMember(lief.dwarf.Type):
121
+ @property
122
+ def underlying_type(self) -> lief.dwarf.Type: ...
123
+
124
+ @property
125
+ def containing_type(self) -> Optional[lief.dwarf.Type]: ...
126
+
127
+ class RValueReference(lief.dwarf.Type):
128
+ @property
129
+ def underlying_type(self) -> lief.dwarf.Type: ...
130
+
131
+ class Reference(lief.dwarf.Type):
132
+ @property
133
+ def underlying_type(self) -> lief.dwarf.Type: ...
134
+
135
+ class Restrict(lief.dwarf.Type):
136
+ @property
137
+ def underlying_type(self) -> lief.dwarf.Type: ...
138
+
139
+ class SetTy(lief.dwarf.Type):
140
+ @property
141
+ def underlying_type(self) -> lief.dwarf.Type: ...
142
+
143
+ class Shared(lief.dwarf.Type):
144
+ @property
145
+ def underlying_type(self) -> lief.dwarf.Type: ...
146
+
147
+ class StringTy(lief.dwarf.Type):
148
+ pass
149
+
150
+ class Subroutine(lief.dwarf.Type):
151
+ @property
152
+ def parameters(self) -> list[Optional[lief.dwarf.Parameter]]: ...
153
+
154
+ class TemplateAlias(lief.dwarf.Type):
155
+ @property
156
+ def parameters(self) -> list[Optional[lief.dwarf.Parameter]]: ...
157
+
158
+ @property
159
+ def underlying_type(self) -> lief.dwarf.Type: ...
160
+
161
+ class Thrown(lief.dwarf.Type):
162
+ @property
163
+ def underlying_type(self) -> lief.dwarf.Type: ...
164
+
165
+ class Volatile(lief.dwarf.Type):
166
+ @property
167
+ def underlying_type(self) -> lief.dwarf.Type: ...