telltale-language 7.0.0

Shared choreography frontend for Telltale DSL parsing, projection, and macro code generation
Documentation
#![allow(
    clippy::missing_errors_doc,
    clippy::missing_panics_doc,
    clippy::must_use_candidate
)]

pub mod ast;
pub mod compiler;
pub mod effect_spec;
pub mod extensions;

pub use ast::{
    AgreementProfileDeclaration, Choreography, Condition, EffectInterfaceDeclaration,
    ExecutionProfileDeclaration, GuestRuntimeDeclaration, LanguageTier, LanguageTierStatus,
    LocalType, MessageType, OperationAgreementAttachment, OperationDeclaration, Protocol,
    RegionDeclaration, Role, RoleSetDeclaration, TheoremPackDeclaration, TopologyDeclaration,
    TypeDeclaration,
};
pub use compiler::codegen::{
    generate_choreography_code, generate_choreography_code_with_annotations,
    generate_choreography_code_with_dynamic_roles, generate_choreography_code_with_extensions,
    generate_choreography_code_with_namespacing, generate_helpers, generate_role_implementations,
    generate_session_type,
};
pub use compiler::parser::{
    choreography_macro, collect_dsl_lints, explain_lowering, parse_choreography,
    parse_choreography_file, parse_choreography_str, parse_choreography_str_with_extensions,
    parse_dsl, render_lsp_lint_diagnostics, ErrorSpan, LintDiagnostic, LintLevel, ParseError,
    DEFAULT_SOURCE_EXTENSION,
};
pub use compiler::projection::{project, ProjectionError};
pub use effect_spec::{
    generate_effect_interface_scaffold, generated_effect_families, GeneratedEffectBehavior,
    GeneratedEffectFamily, GeneratedEffectOperation, GeneratedSimulationMetadata,
    GeneratedSimulationMode,
};
pub use extensions::{
    CodegenContext, ExtensionRegistry, ExtensionValidationError, GrammarExtension, ParseContext,
    ParseError as ExtensionParseError, ProjectionContext, ProtocolExtension, StatementParser,
};