AVIator icon indicating copy to clipboard operation
AVIator copied to clipboard

wip ethers-compile

Open joshieDo opened this issue 3 years ago • 3 comments

A more structured approach at abstracting away the compiler than https://github.com/gakonst/ethers-rs/pull/934

  • Added ethers-compile, and kept ethers-solc

ethers-compile

  • CompilerTrait
  • GenericCompiler (with a CompilerKindEnum inside), Vyper and Solc all impl CompilerTrait
  • Uses a GenericCompiler for as long as possible, and then instantiates either vyper or solc at compile_sequential or compile_parallel with a into_kind() method
  • Report moved from solc
  • Changed the structure so the compilers are under src/compile/compilers
  • CompilerSources has a method called triage that loops through all sources and separates *.vy from *.solc and creates the actual compiler object that it needs. (probably this could be done on Graph but i didn't go much deep there...)

Working with https://github.com/joshiedo/foundry/tree/feat/ethers-compile

Motivation

Solution

PR Checklist

  • [ ] Added Tests
  • [ ] Added Documentation
  • [ ] Updated the changelog

joshieDo avatar Feb 20 '22 20:02 joshieDo