#![cfg_attr(coverage_nightly, coverage(off))]
mod cb600_cb601;
mod cb602_cb603;
mod cb604_cb605;
mod cb606_cb607;
mod cb608_cb609_cb610;
mod cb611_cb612_cb613;
mod cb614_cb615;
mod cb616_cb617;
mod cb618_cb619;
mod constants;
mod detection_helpers;
mod helpers;
pub use helpers::{
compute_lua_production_lines, count_consecutive_field_access, is_lua_test_file,
walkdir_lua_files,
};
pub use detection_helpers::extract_pcall_status_var;
pub use cb600_cb601::{detect_cb600_implicit_globals, detect_cb601_nil_unsafe_access};
pub use cb602_cb603::{detect_cb602_pcall_error_handling, detect_cb603_deprecated_dangerous_api};
pub use cb604_cb605::{detect_cb604_unused_variables, detect_cb605_string_concat_in_loop};
pub use cb606_cb607::{detect_cb606_missing_module_return, detect_cb607_colon_dot_confusion};
pub use cb608_cb609_cb610::{
detect_cb608_unchecked_nil_err, detect_cb609_assert_in_library,
detect_cb610_string_accumulator_in_loop,
};
pub use cb611_cb612_cb613::{
detect_cb611_weak_table_misuse, detect_cb612_test_framework, detect_cb613_require_cycles,
detect_lua_test_frameworks, LuaTestFramework,
};
pub use cb614_cb615::{detect_cb614_global_protection, detect_cb615_coroutine_checks};
pub use cb616_cb617::{
detect_cb616_type_annotations, detect_cb617_openresty_checks, LuaAnnotationSystem,
};
pub use cb618_cb619::{detect_cb618_ffi_safety, detect_cb619_oop_patterns, LuaOopPattern};