Array unification switch
[hiphop-php.git] / hphp / hack / src / oxidized_by_ref / gen / global_options.rs
blobf1f62f96f59ced5abe73c3c4662852080d7f5c33
1 // Copyright (c) Facebook, Inc. and its affiliates.
2 //
3 // This source code is licensed under the MIT license found in the
4 // LICENSE file in the "hack" directory of this source tree.
5 //
6 // @generated SignedSource<<7bd6db0bc0b69f06ab805a182daa248a>>
7 //
8 // To regenerate this file, run:
9 //   hphp/hack/src/oxidized_regen.sh
11 use arena_trait::TrivialDrop;
12 use ocamlrep_derive::FromOcamlRepIn;
13 use ocamlrep_derive::ToOcamlRep;
14 use serde::Serialize;
16 #[allow(unused_imports)]
17 use crate::*;
19 #[derive(
20     Clone,
21     Debug,
22     FromOcamlRepIn,
23     PartialEq,
24     PartialOrd,
25     Serialize,
26     ToOcamlRep
28 pub struct GlobalOptions<'a> {
29     pub tco_experimental_features: s_set::SSet<'a>,
30     pub tco_migration_flags: s_set::SSet<'a>,
31     pub tco_dynamic_view: bool,
32     pub tco_num_local_workers: Option<isize>,
33     pub tco_parallel_type_checking_threshold: isize,
34     pub tco_max_typechecker_worker_memory_mb: Option<isize>,
35     pub tco_defer_class_declaration_threshold: Option<isize>,
36     pub tco_defer_class_memory_mb_threshold: Option<isize>,
37     pub tco_max_times_to_defer_type_checking: Option<isize>,
38     pub tco_prefetch_deferred_files: bool,
39     pub tco_remote_type_check_threshold: Option<isize>,
40     pub tco_remote_type_check: bool,
41     pub tco_remote_worker_key: Option<&'a str>,
42     pub tco_remote_check_id: Option<&'a str>,
43     pub tco_remote_max_batch_size: isize,
44     pub tco_remote_min_batch_size: isize,
45     pub tco_num_remote_workers: isize,
46     pub so_remote_version_specifier: Option<&'a str>,
47     pub so_remote_worker_vfs_checkout_threshold: isize,
48     pub so_naming_sqlite_path: Option<&'a str>,
49     pub po_auto_namespace_map: &'a [(&'a str, &'a str)],
50     pub po_codegen: bool,
51     pub po_deregister_php_stdlib: bool,
52     pub po_disallow_toplevel_requires: bool,
53     pub po_disable_nontoplevel_declarations: bool,
54     pub po_disable_static_closures: bool,
55     pub po_allow_unstable_features: bool,
56     pub tco_log_inference_constraints: bool,
57     pub tco_disallow_array_typehint: bool,
58     pub tco_disallow_array_literal: bool,
59     pub tco_language_feature_logging: bool,
60     pub tco_unsafe_rx: bool,
61     pub tco_disallow_scrutinee_case_value_type_mismatch: bool,
62     pub tco_timeout: isize,
63     pub tco_disallow_invalid_arraykey: bool,
64     pub tco_disallow_byref_dynamic_calls: bool,
65     pub tco_disallow_byref_calls: bool,
66     pub allowed_fixme_codes_strict: i_set::ISet<'a>,
67     pub allowed_fixme_codes_partial: i_set::ISet<'a>,
68     pub codes_not_raised_partial: i_set::ISet<'a>,
69     pub log_levels: s_map::SMap<'a, isize>,
70     pub po_disable_lval_as_an_expression: bool,
71     pub tco_shallow_class_decl: bool,
72     pub po_rust_parser_errors: bool,
73     pub profile_type_check_duration_threshold: f64,
74     pub profile_type_check_twice: bool,
75     pub profile_owner: Option<&'a str>,
76     pub profile_desc: &'a str,
77     pub tco_like_type_hints: bool,
78     pub tco_union_intersection_type_hints: bool,
79     pub tco_coeffects: bool,
80     pub tco_coeffects_local: bool,
81     pub tco_strict_contexts: bool,
82     pub tco_like_casts: bool,
83     pub tco_simple_pessimize: f64,
84     pub tco_complex_coercion: bool,
85     pub tco_disable_partially_abstract_typeconsts: bool,
86     pub error_codes_treated_strictly: i_set::ISet<'a>,
87     pub tco_check_xhp_attribute: bool,
88     pub tco_check_redundant_generics: bool,
89     pub tco_disallow_unresolved_type_variables: bool,
90     pub tco_disallow_trait_reuse: bool,
91     pub tco_disallow_invalid_arraykey_constraint: bool,
92     pub po_enable_class_level_where_clauses: bool,
93     pub po_disable_legacy_soft_typehints: bool,
94     pub po_allowed_decl_fixme_codes: i_set::ISet<'a>,
95     pub po_allow_new_attribute_syntax: bool,
96     pub tco_global_inference: bool,
97     pub tco_gi_reinfer_types: &'a [&'a str],
98     pub tco_ordered_solving: bool,
99     pub tco_const_static_props: bool,
100     pub po_disable_legacy_attribute_syntax: bool,
101     pub tco_const_attribute: bool,
102     pub po_const_default_func_args: bool,
103     pub po_const_default_lambda_args: bool,
104     pub po_disallow_silence: bool,
105     pub po_abstract_static_props: bool,
106     pub po_disable_unset_class_const: bool,
107     pub po_parser_errors_only: bool,
108     pub tco_check_attribute_locations: bool,
109     pub glean_service: &'a str,
110     pub glean_hostname: &'a str,
111     pub glean_port: isize,
112     pub glean_reponame: &'a str,
113     pub symbol_write_root_path: &'a str,
114     pub symbol_write_hhi_path: &'a str,
115     pub symbol_write_ignore_paths: &'a [&'a str],
116     pub symbol_write_index_paths: &'a [&'a str],
117     pub symbol_write_include_hhi: bool,
118     pub po_disallow_func_ptrs_in_constants: bool,
119     pub tco_error_php_lambdas: bool,
120     pub tco_disallow_discarded_nullable_awaitables: bool,
121     pub po_enable_xhp_class_modifier: bool,
122     pub po_disable_xhp_element_mangling: bool,
123     pub po_disable_xhp_children_declarations: bool,
124     pub po_enable_enum_classes: bool,
125     pub po_disable_modes: bool,
126     pub po_disable_hh_ignore_error: bool,
127     pub po_disable_array: bool,
128     pub po_disable_array_typehint: bool,
129     pub tco_enable_systemlib_annotations: bool,
130     pub tco_higher_kinded_types: bool,
131     pub tco_method_call_inference: bool,
132     pub tco_report_pos_from_reason: bool,
133     pub tco_typecheck_sample_rate: f64,
134     pub tco_enable_sound_dynamic: bool,
135     pub po_disallow_hash_comments: bool,
136     pub po_disallow_fun_and_cls_meth_pseudo_funcs: bool,
137     pub tco_use_direct_decl_parser: bool,
138     pub tco_ifc_enabled: &'a [&'a str],
139     pub po_enable_enum_supertyping: bool,
140     pub po_array_unification: bool,
142 impl<'a> TrivialDrop for GlobalOptions<'a> {}