Skip to content

Commit

Permalink
Refactor to set a default provider
Browse files Browse the repository at this point in the history
  • Loading branch information
jeffcharles committed Oct 22, 2024
1 parent 4a7f0ad commit 25555e0
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 12 deletions.
13 changes: 3 additions & 10 deletions crates/cli/src/codegen/builder.rs
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ impl WitOptions {
#[derive(Default)]
pub(crate) struct CodeGenBuilder {
/// The provider to use.
provider: Option<Provider>,
provider: Provider,
/// WIT options for code generation.
wit_opts: WitOptions,
/// Whether to compress the original JS source.
Expand All @@ -66,7 +66,7 @@ impl CodeGenBuilder {

/// Set the provider.
pub fn provider(&mut self, provider: Provider) -> &mut Self {
self.provider = Some(provider);
self.provider = provider;
self
}

Expand Down Expand Up @@ -110,15 +110,8 @@ impl CodeGenBuilder {
fn build_dynamic(self) -> Result<Box<dyn CodeGen>> {
let mut dynamic_gen = Box::new(DynamicGenerator::new());
dynamic_gen.source_compression = self.source_compression;

if let Some(p) = self.provider {
dynamic_gen.provider = p
} else {
bail!("Provider version not specified")
}

dynamic_gen.provider = self.provider;
dynamic_gen.wit_opts = self.wit_opts;

Ok(dynamic_gen)
}
}
3 changes: 1 addition & 2 deletions crates/cli/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,7 @@ fn main() -> Result<()> {
let mut builder = CodeGenBuilder::new();
builder
.wit_opts(codegen.wit)
.source_compression(codegen.source_compression)
.provider(Provider::Default);
.source_compression(codegen.source_compression);

let js_opts: JsOptionGroup = opts.js.clone().into();
let mut gen = if codegen.dynamic {
Expand Down
6 changes: 6 additions & 0 deletions crates/cli/src/providers.rs
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,12 @@ pub enum Provider {
V2,
}

impl Default for Provider {
fn default() -> Self {
Self::Default
}
}

impl Provider {
/// Returns the provider Wasm module as a byte slice.
pub fn as_bytes(&self) -> &[u8] {
Expand Down

0 comments on commit 25555e0

Please sign in to comment.