geam 0.1.0

Experimental Rust-embedded execution runtime for typed Gleam programs
pub mod frontend;
pub mod gleam_json;
pub mod gleam_stdlib;
pub mod gleam_time;
pub mod host;
pub mod plan;
pub mod planner;
pub mod runtime;

pub use frontend::{
    FrontendError, HostedTypedProgram, ModuleSource, PackageSource, ProjectError, TypedProgram,
    compile_typed_host_program, compile_typed_host_project, compile_typed_module,
    compile_typed_package_program, compile_typed_program, compile_typed_project,
};
pub use host::{
    FallibleHostFunction, HostCall, HostCallCompletion, HostCallError, HostCallable,
    HostComponentProfile, HostConstruction, HostConstructions, HostCustom, HostCustomConstructor,
    HostCustomConstructorAt, HostCustomConstructorDefinition, HostCustomConstructorList,
    HostCustomConstructorListEnd, HostCustomConstructorSchema, HostCustomField,
    HostCustomFieldList, HostCustomFieldListEnd, HostCustomFieldSchema, HostCustomIndex0,
    HostCustomIndexNext, HostCustomSchema, HostCustomType, HostCustomTypeArgument,
    HostCustomTypeSchema, HostExternal, HostExternalBinding, HostExternalEquality,
    HostExternalHashing, HostExternalInspection, HostExternalPayloadBuilder,
    HostExternalPayloadView, HostExternalSchema, HostExternalStorage, HostExternalStore,
    HostExternalType, HostExternalTypeSchema, HostFailure, HostFunction, HostFunctionSchema,
    HostFunctionType, HostList, HostListType, HostModule, HostProfile, HostProvider,
    HostProviderComponent, HostProviderComponentRegistration, HostProviderConfiguration,
    HostProviderConfigurationValue, HostProviderInitializationError, HostProviderModule,
    HostProviderSet, HostRegistrationError, HostSchemaType, HostStoredDynamic, HostStoredType,
    HostStoredValue, HostTuple, HostTupleType, HostType, HostTypeAt, HostTypeIndex0,
    HostTypeIndexNext, HostTypeList, HostTypeListEnd, HostTypeParameter, HostTypeSequence,
    HostValue, ScopedConstructingHostFunction, ScopedDivergingHostFunction, ScopedHostFunction,
    StatelessHostProfile,
};
pub use plan::execution::{
    ExecutionPlan, ExecutionPlanExplanation, HostSpecializationError,
    HostSpecializationErrorReason, HostedExecution,
};
pub use plan::{
    BitArrayExpr, BitArrayLocalId, BoolExpr, BoolLocalId, CustomType, CustomTypeName, EchoSite,
    Expr, ExternalType, ExternalTypeDefinition, ExternalTypeName, FunctionTemplate,
    FunctionTemplateId, FunctionType, HostCallSite, HostFunctionTemplate, HostedModulePlan,
    HostedPlannedModule, IntExpr, IntLocalId, LocalId, ModuleId, ModulePlan, NilExpr, NilLocalId,
    PanicSite, Param, ParamBinding, PlannedModule, SourceContext, SourceSpan, Step, StringExpr,
    StringLocalId, ValueType,
};
pub use planner::{
    ExternalTypeProviderLinkReason, HostProviderLinkReason, PlanError, plan_host_program,
    plan_module, plan_module_with_source, plan_program,
};
pub use runtime::{
    BitArraySegmentPanicReason, BitArrayValue, BitArrayValueLengthError, CustomFieldValue,
    CustomValue, EchoLocation, EchoOutput, EchoSink, ExecutionError, ExternalValue,
    ExternalValueIdentity, FunctionValue, HostError, HostLocation, HostOrigin, InvariantError,
    ListValue, ListValueItemTypeMismatch, Panic, PanicDetails, PanicKind, PanicMessage, Value,
    ValueInspection, run_main,
};