Expand description
apcore-toolkit — Shared scanner, schema extraction, and output toolkit.
Rust implementation — tri-language parity with Python and TypeScript.
The crate version is exported as VERSION to match the __version__
/ VERSION symbols in the Python and TypeScript SDKs.
§Language-writer parity note
Python ships PythonWriter and TypeScript ships TypeScriptWriter
for generating language-specific binding code. The Rust SDK intentionally
does not ship a RustWriter: Rust consumers import apcore-toolkit
directly and work with the strongly-typed ScannedModule / registry APIs
instead of generating source files. This parity gap is intentional and
will not be filled in future releases.
§Crate-root re-exports
The HTTP verb helpers and SCANNER_VERB_MAP are exported directly at
the crate root. As of v0.5.0 they are no longer re-exported through the
scanner module path — import from the crate root or http_verb_map:
use apcore_toolkit::{generate_suggested_alias, has_path_params, resolve_http_verb, SCANNER_VERB_MAP};
assert_eq!(resolve_http_verb("POST", false), "create");
assert!(has_path_params("/tasks/{id}"));
assert_eq!(SCANNER_VERB_MAP.get("POST").copied(), Some("create"));
assert_eq!(
generate_suggested_alias("/tasks/user_data", "POST"),
"tasks.user_data.create"
);Re-exports§
pub use ai_enhancer::AIEnhancer;pub use ai_enhancer::AIEnhancerError;pub use ai_enhancer::Enhancer;pub use binding_loader::BindingLoadError;pub use binding_loader::BindingLoader;pub use display::DisplayResolver;pub use display::DisplayResolverError;pub use formatting::to_markdown;pub use formatting::MarkdownError;pub use formatting::MarkdownOptions;pub use http_verb_map::extract_path_param_names;pub use http_verb_map::generate_suggested_alias;pub use http_verb_map::has_path_params;pub use http_verb_map::resolve_http_verb;pub use http_verb_map::substitute_path_params;pub use http_verb_map::SCANNER_VERB_MAP;pub use openapi::deep_resolve_refs;pub use openapi::extract_input_schema;pub use openapi::extract_output_schema;pub use openapi::resolve_ref;pub use openapi::resolve_schema;pub use output::errors::WriteError;pub use output::registry_writer::HandlerFactory;pub use output::registry_writer::HandlerFn;pub use output::registry_writer::RegistryWriter;pub use output::types::Verifier;pub use output::types::VerifyResult;pub use output::types::WriteResult;pub use output::verifiers::run_verifier_chain;pub use output::verifiers::JSONVerifier;pub use output::verifiers::MagicBytesVerifier;pub use output::verifiers::RegistryVerifier;pub use output::verifiers::SyntaxVerifier;pub use output::verifiers::YAMLVerifier;pub use output::yaml_writer::YAMLWriter;pub use output::get_writer;pub use output::OutputFormat;pub use output::OutputFormatError;pub use resolve_target::resolve_target;pub use resolve_target::ResolveTargetError;pub use resolve_target::ResolvedTarget;pub use scanner::deduplicate_ids;pub use scanner::filter_modules;pub use scanner::infer_annotations_from_method;pub use scanner::BaseScanner;pub use schema_utils::enrich_schema_descriptions;pub use serializers::annotations_to_dict;pub use serializers::module_to_dict;pub use serializers::modules_to_dicts;pub use types::ScannedModule;pub use output::http_proxy_writer::HTTPProxyRegistryWriter;pub use output::http_proxy_writer::HTTPProxyWriterError;
Modules§
- ai_
enhancer - binding_
loader - display
- formatting
- http_
verb_ map - openapi
- output
- resolve_
target - scanner
- schema_
utils - serializers
- types
Constants§
- VERSION
- Crate version, read from
Cargo.tomlat compile time.