1pub mod attributes;
6pub mod brain_trait_metrics;
7pub mod brain_type_metrics;
8pub mod complexity_signal;
9pub mod context;
10pub mod decomposition_advice;
11pub mod diagnostics;
12pub mod expr;
13pub mod i18n;
14pub mod lcom4;
15pub mod path;
16pub mod rstest;
17pub mod span;
18pub mod test_support;
19
20pub use attributes::{
21 Attribute, AttributeKind, AttributePath, PARSED_ATTRIBUTE_PLACEHOLDER, has_test_like_attribute,
22 has_test_like_attribute_with, outer_attributes, split_doc_attributes,
23};
24pub use brain_trait_metrics::evaluation::{
25 BrainTraitDiagnostic, BrainTraitDisposition, BrainTraitThresholds, BrainTraitThresholdsBuilder,
26 evaluate_brain_trait,
27};
28pub use brain_trait_metrics::{
29 TraitItemKind, TraitItemMetrics, TraitMetrics, TraitMetricsBuilder, default_method_cc_sum,
30 default_method_count, required_method_count, trait_item_count,
31};
32pub use brain_type_metrics::evaluation::{
33 BrainTypeDiagnostic, BrainTypeDisposition, BrainTypeThresholds, BrainTypeThresholdsBuilder,
34 evaluate_brain_type, format_help, format_note, format_primary_message,
35};
36pub use brain_type_metrics::{
37 CognitiveComplexityBuilder, ForeignReferenceSet, MethodMetrics, TypeMetrics,
38 TypeMetricsBuilder, brain_methods, foreign_reach_count, weighted_methods_count,
39};
40pub use context::{
41 ContextEntry, ContextKind, in_test_like_context, in_test_like_context_with, is_in_main_fn,
42 is_test_fn, is_test_fn_with,
43};
44pub use decomposition_advice::{
45 DecompositionContext, DecompositionSuggestion, MethodProfile, MethodProfileBuilder,
46 SubjectKind, SuggestedExtractionKind, format_diagnostic_note, suggest_decomposition,
47};
48pub use diagnostics::{Applicability, Diagnostic, DiagnosticBuilder, Suggestion, span_lint};
49pub use expr::{Expr, def_id_of_expr_callee, is_path_to, recv_is_option_or_result};
50pub use i18n::{
51 Arguments, FALLBACK_LOCALE, I18nError, LocaleSelection, LocaleSource, Localizer,
52 MessageResolution, available_locales, branch_phrase, get_localizer_for_lint, noop_reporter,
53 normalise_locale, resolve_localizer, safe_resolve_message_set, supports_locale,
54};
55pub use lcom4::{MethodInfo, MethodInfoBuilder, cohesion_components, collect_method_infos};
56pub use path::SimplePath;
57pub use rstest::{
58 ArgAtom, ArgFingerprint, CalleeShape, ExpansionTrace, ExprShape, LocalSlot,
59 ParagraphFingerprint, ParagraphNormalizer, ParameterBinding, RstestDetectionOptions,
60 RstestParameter, RstestParameterKind, SpanRecoveryFrame, StmtShape, UserEditableSpan,
61 classify_rstest_parameter, fixture_local_names, is_rstest_fixture, is_rstest_fixture_with,
62 is_rstest_test, is_rstest_test_with, recover_user_editable_span,
63};
64pub use span::{SourceLocation, SourceSpan, SpanError, span_line_count, span_to_lines};