Skip to content
This repository has been archived by the owner on Apr 9, 2024. It is now read-only.

feat(acvm)!: make Backend trait object safe #180

Merged
merged 2 commits into from
Apr 5, 2023
Merged

Conversation

TomAFrench
Copy link
Member

Related issue(s)

Resolves #179

Description

Summary of changes

I've spun out PartialWitnessGenerator::any_missing_assignment and PartialWitnessGenerator::solve_directives into standalone functions and added a &self parameter to PartialWitnessGenerator::solve_black_box_function_call.

Dependency additions / changes

(If applicable.)

Test additions / changes

I've also added a test to ensure that the Backend trait remains object safe (I couldn't find any lint, etc. which would enforce this so I've just attempted to pass a trait object to a function as this will fail to compile should Backend not be object safe.

Checklist

  • I have tested the changes locally.
  • I have formatted the changes with Prettier and/or cargo fmt with default settings.
  • I have linked this PR to the issue(s) that it resolves.
  • I have reviewed the changes on GitHub, line by line.
  • I have ensured all changes are covered in the description.

Additional context

(If applicable.)

@TomAFrench TomAFrench added this pull request to the merge queue Apr 5, 2023
Merged via the queue into master with commit fd28657 Apr 5, 2023
@github-actions github-actions bot mentioned this pull request Apr 5, 2023
@TomAFrench TomAFrench deleted the backend-object-safe branch April 5, 2023 17:38
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

PartialWitnessGenerator trait is not object safe
2 participants