1#![warn(missing_docs, unreachable_pub, unused_crate_dependencies)]
6#![deny(unused_must_use, rust_2018_idioms)]
7#![doc(test(
8 no_crate_inject,
9 attr(deny(warnings, rust_2018_idioms), allow(dead_code, unused_variables))
10))]
11#![allow(incomplete_features)]
12
13mod aping_ast;
14pub mod gen_v1;
15mod generator;
16
17use betfair_xml_parser::Interface;
18use generator::settings::GeneratorSettings;
19pub use generator::{BetfairTypeGenerator, output, settings};
20pub use proc_macro2::TokenStream;
21
22pub trait GeneratorStrategy {
24 fn generate_submodule<T: Into<Interface>>(&self, aping: T) -> TokenStream;
30
31 fn generate_mod<T: GeneratorSettings>(&self, settings: T) -> TokenStream;
33}