2 * Copyright (c) 2015, Facebook, Inc.
5 * This source code is licensed under the MIT license found in the
6 * LICENSE file in the "hack" directory of this source tree.
16 (* NOTE: this file is in the middle of a large refactoring.
17 Please try to avoid changes other than adding a field to struct `t`,
18 updating `default` value and `make` functions
19 Encapsulation and helpers better fit in the respective modules: e.g.,
20 TypecheckerOptions for tco_* fields
21 ParserOptions for po_*fields
25 type saved_state_loading
= {
26 saved_state_manifold_api_key
: string option;
27 log_saved_state_age_and_distance
: bool;
28 use_manifold_cython_client
: bool;
29 zstd_decompress_by_file
: bool;
30 use_compressed_dep_graph
: bool;
34 let default_saved_state_loading =
36 saved_state_manifold_api_key
= None
;
37 log_saved_state_age_and_distance
= false;
38 use_manifold_cython_client
= false;
39 zstd_decompress_by_file
= true;
40 use_compressed_dep_graph
= true;
44 loading
: saved_state_loading
;
45 rollouts
: Saved_state_rollouts.t
;
46 project_metadata_w_flags
: bool;
55 type 'a none_or_all_except
=
57 | All_except
of 'a list
60 let default_saved_state =
62 loading
= default_saved_state_loading;
63 rollouts
= Saved_state_rollouts.default
;
64 project_metadata_w_flags
= true;
67 let with_saved_state_manifold_api_key saved_state_manifold_api_key ss
=
68 { ss
with loading
= { ss
.loading
with saved_state_manifold_api_key
} }
70 let with_use_manifold_cython_client use_manifold_cython_client ss
=
71 { ss
with loading
= { ss
.loading
with use_manifold_cython_client
} }
73 let with_log_saved_state_age_and_distance log_saved_state_age_and_distance ss
=
74 { ss
with loading
= { ss
.loading
with log_saved_state_age_and_distance
} }
76 let with_zstd_decompress_by_file zstd_decompress_by_file ss
=
77 { ss
with loading
= { ss
.loading
with zstd_decompress_by_file
} }
79 type extended_reasons_config
=
85 (** Naming conventions for fields in this struct:
86 - tco_<feature/flag/setting> - type checker option
87 - po_<feature/flag/setting> - parser option
88 - so_<feature/flag/setting> - server option
92 tco_saved_state
: saved_state
;
93 tco_experimental_features
: SSet.t
;
94 tco_migration_flags
: SSet.t
;
95 tco_num_local_workers
: int option;
96 tco_defer_class_declaration_threshold
: int option;
97 tco_locl_cache_capacity
: int;
98 tco_locl_cache_node_threshold
: int;
99 so_naming_sqlite_path
: string option;
100 po_disallow_toplevel_requires
: bool;
101 tco_log_large_fanouts_threshold
: int option;
102 tco_log_inference_constraints
: bool;
103 tco_language_feature_logging
: bool;
105 tco_disallow_invalid_arraykey
: bool;
106 code_agnostic_fixme
: bool;
107 allowed_fixme_codes_strict
: ISet.t
;
108 log_levels
: int SMap.t
;
109 class_pointer_levels
: int SMap.t
;
110 tco_remote_old_decls_no_limit
: bool;
111 tco_use_old_decls_from_cas
: bool;
112 tco_fetch_remote_old_decls
: bool;
113 tco_populate_member_heaps
: bool;
114 tco_skip_hierarchy_checks
: bool;
115 tco_skip_tast_checks
: bool;
117 tco_coeffects_local
: bool;
118 tco_strict_contexts
: bool;
119 tco_like_casts
: bool;
120 tco_check_xhp_attribute
: bool;
121 tco_check_redundant_generics
: bool;
122 tco_disallow_unresolved_type_variables
: bool;
123 tco_custom_error_config
: Custom_error_config.t
;
124 tco_const_attribute
: bool;
125 tco_check_attribute_locations
: bool;
126 tco_type_refinement_partition_shapes
: bool;
127 glean_reponame
: string;
128 symbol_write_index_inherited_members
: bool;
129 symbol_write_ownership
: bool;
130 symbol_write_root_path
: string;
131 symbol_write_hhi_path
: string;
132 symbol_write_ignore_paths
: string list
;
133 symbol_write_index_paths
: string list
;
134 symbol_write_index_paths_file
: string option;
135 symbol_write_index_paths_file_output
: string option;
136 symbol_write_include_hhi
: bool;
137 symbol_write_sym_hash_in
: string option;
138 symbol_write_exclude_out
: string option;
139 symbol_write_referenced_out
: string option;
140 symbol_write_reindexed_out
: string option;
141 symbol_write_sym_hash_out
: bool;
142 tco_error_php_lambdas
: bool;
143 tco_disallow_discarded_nullable_awaitables
: bool;
144 tco_higher_kinded_types
: bool;
145 tco_report_pos_from_reason
: bool;
146 tco_typecheck_sample_rate
: float;
147 tco_enable_sound_dynamic
: bool;
148 tco_pessimise_builtins
: bool;
149 tco_enable_no_auto_dynamic
: bool;
150 tco_skip_check_under_dynamic
: bool;
151 tco_global_access_check_enabled
: bool;
152 tco_enable_strict_string_concat_interp
: bool;
153 tco_ignore_unsafe_cast
: bool;
154 tco_enable_expression_trees
: bool;
155 tco_enable_function_references
: bool;
156 tco_allowed_expression_tree_visitors
: string list
;
157 tco_typeconst_concrete_concrete_error
: bool;
158 tco_enable_strict_const_semantics
: int;
159 tco_strict_wellformedness
: int;
160 tco_meth_caller_only_public_visibility
: bool;
161 tco_require_extends_implements_ancestors
: bool;
162 tco_strict_value_equality
: bool;
163 tco_enforce_sealed_subclasses
: bool;
164 tco_implicit_inherit_sdt
: bool;
165 tco_explicit_consistent_constructors
: int;
166 tco_require_types_class_consts
: int;
167 tco_type_printer_fuel
: int;
168 tco_specify_manifold_api_key
: bool;
169 tco_profile_top_level_definitions
: bool;
170 tco_allow_all_files_for_module_declarations
: bool;
171 tco_allowed_files_for_module_declarations
: string list
;
172 tco_record_fine_grained_dependencies
: bool;
173 tco_loop_iteration_upper_bound
: int option;
174 tco_populate_dead_unsafe_cast_heap
: bool;
175 dump_tast_hashes
: bool;
176 dump_tasts
: string list
;
177 tco_autocomplete_mode
: bool;
178 tco_package_info
: PackageInfo.t
;
179 tco_log_exhaustivity_check
: bool;
180 tco_sticky_quarantine
: bool;
181 tco_lsp_invalidation
: bool;
182 tco_autocomplete_sort_text
: bool;
183 tco_extended_reasons
: extended_reasons_config
option;
184 tco_disable_physical_equality
: bool;
185 hack_warnings
: int none_or_all_except
;
186 warnings_default_all
: bool;
187 tco_strict_switch
: bool;
188 tco_allowed_files_for_ignore_readonly
: string list
;
189 tco_package_v2_support_multifile_tests
: bool;
190 tco_package_v2_bypass_package_check_for_class_const
: bool;
192 hh_distc_should_disable_trace_store
: bool;
193 hh_distc_exponential_backoff_num_retries
: int;
194 tco_enable_abstract_method_optional_parameters
: bool;
195 recursive_case_types
: bool;
197 [@@deriving eq
, show
]
201 po
= ParserOptions.default;
202 tco_saved_state
= default_saved_state;
203 tco_experimental_features
= SSet.empty
;
204 tco_migration_flags
= SSet.empty
;
205 tco_num_local_workers
= None
;
206 tco_defer_class_declaration_threshold
= None
;
207 tco_locl_cache_capacity
= 30;
208 tco_locl_cache_node_threshold
= 10_000;
209 so_naming_sqlite_path
= None
;
210 po_disallow_toplevel_requires
= false;
211 tco_log_large_fanouts_threshold
= None
;
212 tco_log_inference_constraints
= false;
213 tco_language_feature_logging
= false;
215 tco_disallow_invalid_arraykey
= true;
216 code_agnostic_fixme
= false;
217 allowed_fixme_codes_strict
= ISet.empty
;
218 log_levels
= SMap.empty
;
219 class_pointer_levels
= SMap.empty
;
220 tco_remote_old_decls_no_limit
= false;
221 tco_use_old_decls_from_cas
= false;
222 tco_fetch_remote_old_decls
= true;
223 tco_populate_member_heaps
= true;
224 tco_skip_hierarchy_checks
= false;
225 tco_skip_tast_checks
= false;
226 tco_coeffects
= true;
227 tco_coeffects_local
= true;
228 tco_strict_contexts
= true;
229 tco_like_casts
= false;
230 tco_check_xhp_attribute
= false;
231 tco_check_redundant_generics
= false;
232 tco_disallow_unresolved_type_variables
= false;
233 tco_custom_error_config
= Custom_error_config.empty
;
234 tco_const_attribute
= false;
235 tco_check_attribute_locations
= true;
236 tco_type_refinement_partition_shapes
= false;
237 glean_reponame
= "www.hack.light";
238 symbol_write_index_inherited_members
= true;
239 symbol_write_ownership
= false;
240 symbol_write_root_path
= "www";
241 symbol_write_hhi_path
= "hhi";
242 symbol_write_ignore_paths
= [];
243 symbol_write_index_paths
= [];
244 symbol_write_index_paths_file
= None
;
245 symbol_write_index_paths_file_output
= None
;
246 symbol_write_include_hhi
= false;
247 symbol_write_sym_hash_in
= None
;
248 symbol_write_exclude_out
= None
;
249 symbol_write_referenced_out
= None
;
250 symbol_write_reindexed_out
= None
;
251 symbol_write_sym_hash_out
= false;
252 tco_error_php_lambdas
= false;
253 tco_disallow_discarded_nullable_awaitables
= false;
254 tco_higher_kinded_types
= false;
255 tco_report_pos_from_reason
= false;
256 tco_typecheck_sample_rate
= 1.0;
257 tco_enable_sound_dynamic
= false;
258 tco_pessimise_builtins
= false;
259 tco_enable_no_auto_dynamic
= false;
260 tco_skip_check_under_dynamic
= false;
261 tco_global_access_check_enabled
= false;
262 tco_enable_strict_string_concat_interp
= false;
263 tco_ignore_unsafe_cast
= false;
264 tco_enable_expression_trees
= false;
265 tco_enable_function_references
= false;
266 tco_allowed_expression_tree_visitors
= [];
267 tco_typeconst_concrete_concrete_error
= false;
268 tco_enable_strict_const_semantics
= 0;
269 tco_strict_wellformedness
= 0;
270 tco_meth_caller_only_public_visibility
= true;
271 tco_require_extends_implements_ancestors
= false;
272 tco_strict_value_equality
= false;
273 tco_enforce_sealed_subclasses
= false;
274 tco_implicit_inherit_sdt
= false;
275 tco_explicit_consistent_constructors
= 0;
276 tco_require_types_class_consts
= 0;
277 tco_type_printer_fuel
= 100;
278 tco_specify_manifold_api_key
= false;
279 tco_profile_top_level_definitions
= false;
280 tco_allow_all_files_for_module_declarations
= true;
281 tco_allowed_files_for_module_declarations
= [];
282 tco_record_fine_grained_dependencies
= false;
283 tco_loop_iteration_upper_bound
= None
;
284 tco_populate_dead_unsafe_cast_heap
= false;
285 dump_tast_hashes
= false;
287 tco_autocomplete_mode
= false;
288 tco_package_info
= PackageInfo.empty
;
289 tco_log_exhaustivity_check
= false;
290 tco_sticky_quarantine
= false;
291 tco_lsp_invalidation
= false;
292 tco_autocomplete_sort_text
= false;
293 tco_extended_reasons
= None
;
294 tco_disable_physical_equality
= false;
295 hack_warnings
= All_except
[];
296 warnings_default_all
= false;
297 tco_strict_switch
= false;
298 tco_allowed_files_for_ignore_readonly
= [];
299 tco_package_v2_support_multifile_tests
= false;
300 tco_package_v2_bypass_package_check_for_class_const
= true;
302 hh_distc_should_disable_trace_store
= false;
303 hh_distc_exponential_backoff_num_retries
= 10;
304 tco_enable_abstract_method_optional_parameters
= false;
305 recursive_case_types
= false;
311 ?po_disallow_toplevel_requires
312 ?tco_log_large_fanouts_threshold
313 ?tco_log_inference_constraints
314 ?tco_experimental_features
316 ?tco_num_local_workers
317 ?tco_defer_class_declaration_threshold
318 ?tco_locl_cache_capacity
319 ?tco_locl_cache_node_threshold
320 ?so_naming_sqlite_path
321 ?tco_language_feature_logging
323 ?tco_disallow_invalid_arraykey
325 ?allowed_fixme_codes_strict
327 ?class_pointer_levels
328 ?tco_remote_old_decls_no_limit
329 ?tco_use_old_decls_from_cas
330 ?tco_fetch_remote_old_decls
331 ?tco_populate_member_heaps
332 ?tco_skip_hierarchy_checks
333 ?tco_skip_tast_checks
338 ?tco_check_xhp_attribute
339 ?tco_check_redundant_generics
340 ?tco_disallow_unresolved_type_variables
341 ?tco_custom_error_config
343 ?tco_check_attribute_locations
344 ?tco_type_refinement_partition_shapes
346 ?symbol_write_index_inherited_members
347 ?symbol_write_ownership
348 ?symbol_write_root_path
349 ?symbol_write_hhi_path
350 ?symbol_write_ignore_paths
351 ?symbol_write_index_paths
352 ?symbol_write_index_paths_file
353 ?symbol_write_index_paths_file_output
354 ?symbol_write_include_hhi
355 ?symbol_write_sym_hash_in
356 ?symbol_write_exclude_out
357 ?symbol_write_referenced_out
358 ?symbol_write_reindexed_out
359 ?symbol_write_sym_hash_out
360 ?tco_error_php_lambdas
361 ?tco_disallow_discarded_nullable_awaitables
362 ?tco_higher_kinded_types
363 ?tco_report_pos_from_reason
364 ?tco_typecheck_sample_rate
365 ?tco_enable_sound_dynamic
366 ?tco_pessimise_builtins
367 ?tco_enable_no_auto_dynamic
368 ?tco_skip_check_under_dynamic
369 ?tco_global_access_check_enabled
370 ?tco_enable_strict_string_concat_interp
371 ?tco_ignore_unsafe_cast
372 ?tco_enable_expression_trees
373 ?tco_enable_function_references
374 ?tco_allowed_expression_tree_visitors
375 ?tco_typeconst_concrete_concrete_error
376 ?tco_enable_strict_const_semantics
377 ?tco_strict_wellformedness
378 ?tco_meth_caller_only_public_visibility
379 ?tco_require_extends_implements_ancestors
380 ?tco_strict_value_equality
381 ?tco_enforce_sealed_subclasses
382 ?tco_implicit_inherit_sdt
383 ?tco_explicit_consistent_constructors
384 ?tco_require_types_class_consts
385 ?tco_type_printer_fuel
386 ?tco_specify_manifold_api_key
387 ?tco_profile_top_level_definitions
388 ?tco_allow_all_files_for_module_declarations
389 ?tco_allowed_files_for_module_declarations
390 ?tco_record_fine_grained_dependencies
391 ?tco_loop_iteration_upper_bound
392 ?tco_populate_dead_unsafe_cast_heap
395 ?tco_autocomplete_mode
397 ?tco_log_exhaustivity_check
398 ?tco_sticky_quarantine
399 ?tco_lsp_invalidation
400 ?tco_autocomplete_sort_text
401 ?tco_extended_reasons
402 ?tco_disable_physical_equality
404 ?warnings_default_all
406 ?tco_allowed_files_for_ignore_readonly
407 ?tco_package_v2_support_multifile_tests
408 ?tco_package_v2_bypass_package_check_for_class_const
410 ?hh_distc_should_disable_trace_store
411 ?hh_distc_exponential_backoff_num_retries
412 ?tco_enable_abstract_method_optional_parameters
413 ?recursive_case_types
415 let setting setting option =
418 | Some
value -> value
420 let setting_opt setting option =
426 po
= setting po options
.po
;
427 tco_saved_state
= setting tco_saved_state options
.tco_saved_state
;
428 tco_experimental_features
=
429 setting tco_experimental_features options
.tco_experimental_features
;
430 tco_migration_flags
=
431 setting tco_migration_flags options
.tco_migration_flags
;
432 tco_num_local_workers
=
433 setting_opt tco_num_local_workers options
.tco_num_local_workers
;
434 tco_defer_class_declaration_threshold
=
436 tco_defer_class_declaration_threshold
437 options
.tco_defer_class_declaration_threshold
;
438 tco_locl_cache_capacity
=
439 setting tco_locl_cache_capacity options
.tco_locl_cache_capacity
;
440 tco_locl_cache_node_threshold
=
442 tco_locl_cache_node_threshold
443 options
.tco_locl_cache_node_threshold
;
444 so_naming_sqlite_path
=
445 setting_opt so_naming_sqlite_path options
.so_naming_sqlite_path
;
446 code_agnostic_fixme
=
447 setting code_agnostic_fixme options
.code_agnostic_fixme
;
448 allowed_fixme_codes_strict
=
449 setting allowed_fixme_codes_strict options
.allowed_fixme_codes_strict
;
450 po_disallow_toplevel_requires
=
452 po_disallow_toplevel_requires
453 options
.po_disallow_toplevel_requires
;
454 tco_log_large_fanouts_threshold
=
456 tco_log_large_fanouts_threshold
457 options
.tco_log_large_fanouts_threshold
;
458 tco_log_inference_constraints
=
460 tco_log_inference_constraints
461 options
.tco_log_inference_constraints
;
462 tco_language_feature_logging
=
463 setting tco_language_feature_logging options
.tco_language_feature_logging
;
464 tco_timeout
= setting tco_timeout options
.tco_timeout
;
465 tco_disallow_invalid_arraykey
=
467 tco_disallow_invalid_arraykey
468 options
.tco_disallow_invalid_arraykey
;
469 log_levels
= setting log_levels options
.log_levels
;
470 class_pointer_levels
=
471 setting class_pointer_levels options
.class_pointer_levels
;
472 tco_remote_old_decls_no_limit
=
474 tco_remote_old_decls_no_limit
475 options
.tco_remote_old_decls_no_limit
;
476 tco_use_old_decls_from_cas
=
477 setting tco_use_old_decls_from_cas options
.tco_use_old_decls_from_cas
;
478 tco_fetch_remote_old_decls
=
479 setting tco_fetch_remote_old_decls options
.tco_fetch_remote_old_decls
;
480 tco_populate_member_heaps
=
481 setting tco_populate_member_heaps options
.tco_populate_member_heaps
;
482 tco_skip_hierarchy_checks
=
483 setting tco_skip_hierarchy_checks options
.tco_skip_hierarchy_checks
;
484 tco_skip_tast_checks
=
485 setting tco_skip_tast_checks options
.tco_skip_tast_checks
;
486 tco_coeffects
= setting tco_coeffects options
.tco_coeffects
;
487 tco_coeffects_local
=
488 setting tco_coeffects_local options
.tco_coeffects_local
;
489 tco_strict_contexts
=
490 setting tco_strict_contexts options
.tco_strict_contexts
;
491 tco_like_casts
= setting tco_like_casts options
.tco_like_casts
;
492 tco_check_xhp_attribute
=
493 setting tco_check_xhp_attribute options
.tco_check_xhp_attribute
;
494 tco_check_redundant_generics
=
495 setting tco_check_redundant_generics options
.tco_check_redundant_generics
;
496 tco_disallow_unresolved_type_variables
=
498 tco_disallow_unresolved_type_variables
499 options
.tco_disallow_unresolved_type_variables
;
500 tco_custom_error_config
=
501 setting tco_custom_error_config options
.tco_custom_error_config
;
502 tco_const_attribute
=
503 setting tco_const_attribute options
.tco_const_attribute
;
504 tco_check_attribute_locations
=
506 tco_check_attribute_locations
507 options
.tco_check_attribute_locations
;
508 tco_type_refinement_partition_shapes
=
510 tco_type_refinement_partition_shapes
511 options
.tco_type_refinement_partition_shapes
;
512 glean_reponame
= setting glean_reponame options
.glean_reponame
;
513 symbol_write_index_inherited_members
=
515 symbol_write_index_inherited_members
516 options
.symbol_write_index_inherited_members
;
517 symbol_write_ownership
=
518 setting symbol_write_ownership options
.symbol_write_ownership
;
519 symbol_write_root_path
=
520 setting symbol_write_root_path options
.symbol_write_root_path
;
521 symbol_write_hhi_path
=
522 setting symbol_write_hhi_path options
.symbol_write_hhi_path
;
523 symbol_write_ignore_paths
=
524 setting symbol_write_ignore_paths options
.symbol_write_ignore_paths
;
525 symbol_write_index_paths
=
526 setting symbol_write_index_paths options
.symbol_write_index_paths
;
527 symbol_write_index_paths_file
=
529 symbol_write_index_paths_file
530 options
.symbol_write_index_paths_file
;
531 symbol_write_index_paths_file_output
=
533 symbol_write_index_paths_file_output
534 options
.symbol_write_index_paths_file_output
;
535 symbol_write_include_hhi
=
536 setting symbol_write_include_hhi options
.symbol_write_include_hhi
;
537 symbol_write_sym_hash_in
=
538 setting_opt symbol_write_sym_hash_in options
.symbol_write_sym_hash_in
;
539 symbol_write_exclude_out
=
540 setting_opt symbol_write_exclude_out options
.symbol_write_exclude_out
;
541 symbol_write_referenced_out
=
543 symbol_write_referenced_out
544 options
.symbol_write_referenced_out
;
545 symbol_write_reindexed_out
=
546 setting_opt symbol_write_reindexed_out options
.symbol_write_reindexed_out
;
547 symbol_write_sym_hash_out
=
548 setting symbol_write_sym_hash_out options
.symbol_write_sym_hash_out
;
549 tco_error_php_lambdas
=
550 setting tco_error_php_lambdas options
.tco_error_php_lambdas
;
551 tco_disallow_discarded_nullable_awaitables
=
553 tco_disallow_discarded_nullable_awaitables
554 options
.tco_disallow_discarded_nullable_awaitables
;
555 tco_higher_kinded_types
=
556 setting tco_higher_kinded_types options
.tco_higher_kinded_types
;
557 tco_report_pos_from_reason
=
558 setting tco_report_pos_from_reason options
.tco_report_pos_from_reason
;
559 tco_typecheck_sample_rate
=
560 setting tco_typecheck_sample_rate options
.tco_typecheck_sample_rate
;
561 tco_enable_sound_dynamic
=
562 setting tco_enable_sound_dynamic options
.tco_enable_sound_dynamic
;
563 tco_pessimise_builtins
=
564 setting tco_pessimise_builtins options
.tco_pessimise_builtins
;
565 tco_enable_no_auto_dynamic
=
566 setting tco_enable_no_auto_dynamic options
.tco_enable_no_auto_dynamic
;
567 tco_skip_check_under_dynamic
=
568 setting tco_skip_check_under_dynamic options
.tco_skip_check_under_dynamic
;
569 tco_global_access_check_enabled
=
571 tco_global_access_check_enabled
572 options
.tco_global_access_check_enabled
;
573 tco_enable_strict_string_concat_interp
=
575 tco_enable_strict_string_concat_interp
576 options
.tco_enable_strict_string_concat_interp
;
577 tco_ignore_unsafe_cast
=
578 setting tco_ignore_unsafe_cast options
.tco_ignore_unsafe_cast
;
579 tco_enable_expression_trees
=
580 setting tco_enable_expression_trees options
.tco_enable_expression_trees
;
581 tco_enable_function_references
=
583 tco_enable_function_references
584 options
.tco_enable_function_references
;
585 tco_allowed_expression_tree_visitors
=
587 tco_allowed_expression_tree_visitors
588 options
.tco_allowed_expression_tree_visitors
;
589 tco_typeconst_concrete_concrete_error
=
591 tco_typeconst_concrete_concrete_error
592 options
.tco_typeconst_concrete_concrete_error
;
593 tco_enable_strict_const_semantics
=
595 tco_enable_strict_const_semantics
596 options
.tco_enable_strict_const_semantics
;
597 tco_strict_wellformedness
=
598 setting tco_strict_wellformedness options
.tco_strict_wellformedness
;
599 tco_meth_caller_only_public_visibility
=
601 tco_meth_caller_only_public_visibility
602 options
.tco_meth_caller_only_public_visibility
;
603 tco_require_extends_implements_ancestors
=
605 tco_require_extends_implements_ancestors
606 options
.tco_require_extends_implements_ancestors
;
607 tco_strict_value_equality
=
608 setting tco_strict_value_equality options
.tco_strict_value_equality
;
609 tco_enforce_sealed_subclasses
=
611 tco_enforce_sealed_subclasses
612 options
.tco_enforce_sealed_subclasses
;
613 tco_implicit_inherit_sdt
=
614 setting tco_implicit_inherit_sdt options
.tco_implicit_inherit_sdt
;
615 tco_explicit_consistent_constructors
=
617 tco_explicit_consistent_constructors
618 options
.tco_explicit_consistent_constructors
;
619 tco_require_types_class_consts
=
621 tco_require_types_class_consts
622 options
.tco_require_types_class_consts
;
623 tco_type_printer_fuel
=
624 setting tco_type_printer_fuel options
.tco_type_printer_fuel
;
625 tco_specify_manifold_api_key
=
626 setting tco_specify_manifold_api_key options
.tco_specify_manifold_api_key
;
627 tco_profile_top_level_definitions
=
629 tco_profile_top_level_definitions
630 options
.tco_profile_top_level_definitions
;
631 tco_allow_all_files_for_module_declarations
=
633 tco_allow_all_files_for_module_declarations
634 options
.tco_allow_all_files_for_module_declarations
;
635 tco_allowed_files_for_module_declarations
=
637 tco_allowed_files_for_module_declarations
638 options
.tco_allowed_files_for_module_declarations
;
639 tco_record_fine_grained_dependencies
=
641 tco_record_fine_grained_dependencies
642 options
.tco_record_fine_grained_dependencies
;
643 tco_loop_iteration_upper_bound
=
645 tco_loop_iteration_upper_bound
646 options
.tco_loop_iteration_upper_bound
;
647 tco_populate_dead_unsafe_cast_heap
=
649 tco_populate_dead_unsafe_cast_heap
650 options
.tco_populate_dead_unsafe_cast_heap
;
651 dump_tast_hashes
= setting dump_tast_hashes options
.dump_tast_hashes
;
652 dump_tasts
= setting dump_tasts options
.dump_tasts
;
653 tco_autocomplete_mode
=
654 setting tco_autocomplete_mode options
.tco_autocomplete_mode
;
655 tco_package_info
= setting tco_package_info options
.tco_package_info
;
656 tco_log_exhaustivity_check
=
657 setting tco_log_exhaustivity_check options
.tco_log_exhaustivity_check
;
658 tco_sticky_quarantine
=
659 setting tco_sticky_quarantine options
.tco_sticky_quarantine
;
660 tco_lsp_invalidation
=
661 setting tco_lsp_invalidation options
.tco_lsp_invalidation
;
662 tco_autocomplete_sort_text
=
663 setting tco_autocomplete_sort_text options
.tco_autocomplete_sort_text
;
664 tco_extended_reasons
=
665 setting_opt tco_extended_reasons options
.tco_extended_reasons
;
666 tco_disable_physical_equality
=
668 tco_disable_physical_equality
669 options
.tco_disable_physical_equality
;
670 hack_warnings
= setting hack_warnings options
.hack_warnings
;
671 warnings_default_all
=
672 setting warnings_default_all options
.warnings_default_all
;
673 tco_strict_switch
= setting tco_strict_switch options
.tco_strict_switch
;
674 tco_allowed_files_for_ignore_readonly
=
676 tco_allowed_files_for_ignore_readonly
677 options
.tco_allowed_files_for_ignore_readonly
;
678 tco_package_v2_support_multifile_tests
=
680 tco_package_v2_support_multifile_tests
681 options
.tco_package_v2_support_multifile_tests
;
682 tco_package_v2_bypass_package_check_for_class_const
=
684 tco_package_v2_bypass_package_check_for_class_const
685 options
.tco_package_v2_bypass_package_check_for_class_const
;
686 re_no_cache
= setting re_no_cache options
.re_no_cache
;
687 hh_distc_should_disable_trace_store
=
689 hh_distc_should_disable_trace_store
690 options
.hh_distc_should_disable_trace_store
;
691 hh_distc_exponential_backoff_num_retries
=
693 hh_distc_exponential_backoff_num_retries
694 options
.hh_distc_exponential_backoff_num_retries
;
695 tco_enable_abstract_method_optional_parameters
=
697 tco_enable_abstract_method_optional_parameters
698 options
.tco_enable_abstract_method_optional_parameters
;
699 recursive_case_types
=
700 setting recursive_case_types options
.recursive_case_types
;
703 let so_naming_sqlite_path t
= t
.so_naming_sqlite_path
705 let allowed_fixme_codes_strict t
= t
.allowed_fixme_codes_strict
707 let code_agnostic_fixme t
= t
.code_agnostic_fixme