iota_types/
execution_config_utils.rs1use iota_protocol_config::ProtocolConfig;
6use move_binary_format::{
7 binary_config::{BinaryConfig, TableConfig},
8 file_format_common::VERSION_1,
9};
10
11pub fn to_binary_config(protocol_config: &ProtocolConfig) -> BinaryConfig {
13 BinaryConfig::new(
14 protocol_config.move_binary_format_version(),
15 protocol_config
16 .min_move_binary_format_version_as_option()
17 .unwrap_or(VERSION_1),
18 protocol_config.no_extraneous_module_bytes(),
19 TableConfig {
20 module_handles: protocol_config
21 .binary_module_handles_as_option()
22 .unwrap_or(u16::MAX),
23 datatype_handles: protocol_config
24 .binary_struct_handles_as_option()
25 .unwrap_or(u16::MAX),
26 function_handles: protocol_config
27 .binary_function_handles_as_option()
28 .unwrap_or(u16::MAX),
29 function_instantiations: protocol_config
30 .binary_function_instantiations_as_option()
31 .unwrap_or(u16::MAX),
32 signatures: protocol_config
33 .binary_signatures_as_option()
34 .unwrap_or(u16::MAX),
35 constant_pool: protocol_config
36 .binary_constant_pool_as_option()
37 .unwrap_or(u16::MAX),
38 identifiers: protocol_config
39 .binary_identifiers_as_option()
40 .unwrap_or(u16::MAX),
41 address_identifiers: protocol_config
42 .binary_address_identifiers_as_option()
43 .unwrap_or(u16::MAX),
44 struct_defs: protocol_config
45 .binary_struct_defs_as_option()
46 .unwrap_or(u16::MAX),
47 struct_def_instantiations: protocol_config
48 .binary_struct_def_instantiations_as_option()
49 .unwrap_or(u16::MAX),
50 function_defs: protocol_config
51 .binary_function_defs_as_option()
52 .unwrap_or(u16::MAX),
53 field_handles: protocol_config
54 .binary_field_handles_as_option()
55 .unwrap_or(u16::MAX),
56 field_instantiations: protocol_config
57 .binary_field_instantiations_as_option()
58 .unwrap_or(u16::MAX),
59 friend_decls: protocol_config
60 .binary_friend_decls_as_option()
61 .unwrap_or(u16::MAX),
62 enum_defs: protocol_config
63 .binary_enum_defs_as_option()
64 .unwrap_or(u16::MAX),
65 enum_def_instantiations: protocol_config
66 .binary_enum_def_instantiations_as_option()
67 .unwrap_or(u16::MAX),
68 variant_handles: protocol_config
69 .binary_variant_handles_as_option()
70 .unwrap_or(u16::MAX),
71 variant_instantiation_handles: protocol_config
72 .binary_variant_instantiation_handles_as_option()
73 .unwrap_or(u16::MAX),
74 },
75 )
76}