1mod branch_coverage;
2mod diagnostic;
3mod expression;
4mod locale;
5mod message_coverage;
6mod reference;
7
8pub use branch_coverage::{
9 analyze_branch_coverage, require_other_branch, BranchCoverage, NamedSpan,
10};
11pub use diagnostic::{
12 render_diagnostics, render_diagnostics_with_color, Diagnostic, DiagnosticSeverity, QuickFix,
13 RelatedSpan, RenderError, Replacement,
14};
15pub use expression::{
16 analyze_expressions, analyze_function_patterns, ExpressionAnalysis, FormProperty,
17 FormSignature, FunctionSignature, MessageToAnalyze, Variable,
18};
19pub use locale::{
20 analyze_locale_coverage, analyze_locale_coverage_with_options, analyze_locale_file,
21 analyze_locale_message_coverage, analyze_locale_message_coverage_with_options,
22 locale_public_messages, schema_public_messages, ImplementedLocaleMessage,
23 LocaleCoverageOptions, RequiredLocaleMessage,
24};
25pub use message_coverage::{analyze_message_coverage, PublicMessage};
26pub use reference::{detect_reference_cycles, ReferenceNode};
27
28pub const CRATE_PURPOSE: &str = "semantic analysis";
29
30#[cfg(test)]
31mod tests;