1pub mod arena;
5pub(crate) mod artifact_f64;
6pub mod asi;
7pub mod ast;
8pub mod authority;
9pub mod backtrace;
10pub mod capability_derivation;
11pub mod codegen;
12pub mod compile;
13pub mod compile_capabilities;
14pub mod compiler_error;
15pub mod compiler_limits;
16pub mod diagnostics;
17pub mod did_you_mean;
18pub mod doc_comment;
19pub mod doc_directives;
20pub mod docs_view;
21pub mod import_suggestions;
22pub mod lexer;
23pub(crate) mod literal_units;
24pub(crate) mod lower_local_types;
25pub mod lower_patterns;
26pub mod mangle;
27pub mod package_config;
28pub mod package_declaration;
29pub mod packages;
30pub mod parser;
31pub mod property_keys;
32pub mod rendering;
33pub mod runtime;
34pub mod shape;
35pub mod source;
36mod source_validation;
37pub mod span;
38pub mod stdlib;
39pub mod token;
40pub mod tree_height;
41pub mod type_info;
42mod type_rendering;
43pub mod type_size;
44mod type_walk;
45pub mod typechecker;
46pub mod typed_ast;
47pub mod types;
48
49pub use asi::Asi;
50pub use ast::{
51 AccessorKind, ArrayLiteralElement, ArrowBody, Ast, BinOp, Binding, BindingKind, CatchClause,
52 ChainPart, ClassMember, ClassModifiers, EnumInitializer, EnumMember, ExportedDecl, Expr,
53 ExprId, ExprKind, Ident, ImportKind, ImportSpecifier, IndexSignatureAnnotation,
54 InterfaceMember, LoweredLocalTypes, ObjectLiteralField, ObjectLiteralMember,
55 ObjectPatternField, ParamDecl, PatternOrigin, PostfixOp, Stmt, StmtId, StmtKind, SwitchCase,
56 SwitchDefault, TypeAnnotation, TypeAnnotationField, TypeAnnotationKind,
57 TypeParameterAnnotation, TypePredicateAnnotation, UnOp, Visibility,
58};
59pub use authority::{
60 AuthorityCallable, AuthorityCallableKind, AuthorityCheck, AuthorityEdge, AuthorityEffect,
61 AuthorityExposure, AuthorityMap, AuthorityPosition, AuthorityRoute, AuthorityRouteEffect,
62 AuthoritySpan, AuthorityWitnessStep,
63};
64pub use backtrace::{BacktraceMode, failure_message, render as render_backtrace};
65pub use capability_derivation::{DerivedCapability, derive_call_site_capability};
66pub use codegen::{SymbolTable, codegen};
67pub use compile::{
68 CompiledPackage, CompiledScript, PackageSourceModule, PackageSurface, PackageTestSurface,
69 ParsedScript, PhaseTimings, ScriptImports, compile_package, compile_package_test,
70 compile_package_with_transitive, compile_parsed_script_timed, compile_script,
71 compile_script_owned_by, parse_script, typecheck, typecheck_package_to_typed_ast,
72 typecheck_to_typed_ast,
73};
74pub use diagnostics::{Diagnostic, Severity};
75pub use doc_comment::{
76 DocCapability, DocCapabilityBinding, DocCapabilityBindingKind, DocCapabilityDiagnostic,
77 DocCapabilityLiteral, DocComment, DocParam, DocReturns, DocText, DocUnknownTag, RawDoc, doc,
78 parse_doc_comment,
79};
80pub use lexer::Lexer;
81pub use lower_patterns::lower as lower_patterns;
82pub use mangle::MangledName;
83pub use package_declaration::{
84 AccessorSig, ClassExtends, DefaultValue, Dispatch, EnumVariantValue, FieldSig,
85 GenericParameters, MethodSig, NamespaceSymbol, PackageDeclaration, Param, PropertySig,
86 RuntimeFunction, TypeKind, TypeSymbol, ValueKind, ValueSymbol, VirtualDispatch,
87};
88pub use parser::parse;
89pub use runtime::{RunResult, RuntimeConfig, dispatch_main_async, instantiate_program_async};
90pub use shape::Shape;
91pub use source::{ModulePath, SourceFile, Sources};
92pub use span::{FileId, LineIndex, Span};
93pub use stdlib::{OptionalPackage, Stdlib};
94pub use token::{Token, TokenKind};
95pub use type_info::{FieldInfo, TypeInfo, TypeInfoId, TypeInfoIndex, TypeInfoKind, TypeInfoTable};
96pub use typechecker::{capability_binding_type, capture, check, desugar, infer, infer_package};
97pub use typed_ast::{
98 CapturedVar, ClosureBody, EnumVariantPayload, ExportEntry, ExportKind, FieldNarrowingCheck,
99 FieldNarrowingTest, FinalizerArgumentCheck, ForOfKind, GenericArgument, GlobalKind,
100 InterfaceCarrier, InterfaceNarrowingTest, InternalModuleExports, Intrinsic, MaybeMissingLocal,
101 PostfixTarget, TypedArrayElement, TypedAst, TypedCatchClause, TypedChainPart,
102 TypedClassAccessor, TypedClassConstructor, TypedClassDecl, TypedClassField, TypedClassMethod,
103 TypedExpr, TypedExprKind, TypedFunction, TypedGlobal, TypedInterfaceDecl, TypedInterfaceMember,
104 TypedNumberEnumDecl, TypedNumberEnumMember, TypedObjectFieldOrigin, TypedObjectFieldSource,
105 TypedObjectLiteralField, TypedObjectMember, TypedParam, TypedStmt, TypedStmtKind,
106 TypedStringEnumDecl, TypedStringEnumMember, TypedSwitchCase, TypedSwitchValue,
107 TypedTypeAliasDecl, TypedTypeDecl, TypeofTagKind,
108};
109pub use types::{IndexSignature, ObjectField, Package, TupleType, Type, TypePredicate};