Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a toggle to deactivate the generation of the build() method to allow custom build() #37

Open
RustyNova016 opened this issue Jan 17, 2025 · 1 comment
Labels
enhancement New feature or request

Comments

@RustyNova016
Copy link

Currently, the builder autogenerate a build() method on all builders, which prevent having a custom build logic.
It would be nice to have a toggle to deactivate it, and letting us implement it ourself. Something like this:

#[derive(Builder)]
#[builder(no_build)]
struct MyType {
  integer: i32,
  string: String,
  optional: Option<String>,
}

impl MyTypeBuilder {
    pub fn build() -> Mytype {
        // Custom builder!
    }
}
```
@loganmzz
Copy link
Owner

loganmzz commented Feb 8, 2025

While it might sounds legit, I'm not currently considering this feature. The main reason is that I need to specify type signature implementing the build() function for state-based builder.

The current version is close to stable but I haven't explore case where the built type has also type parameters. This will surely have impact on state-based type signature of implementation blocks.

I keep this in mind (and open :) ) for the time I will address parameterized built types.

@loganmzz loganmzz added the enhancement New feature or request label Feb 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants