Class: Platon::Solidity
- Inherits:
-
Object
- Object
- Platon::Solidity
- Defined in:
- lib/platon/solidity.rb
Constant Summary collapse
- OUTPUT_REGEXP =
/======= (\S*):(\S*) =======\s*Binary:\s*(\S*)\s*Contract JSON ABI\s*(.*)/
Instance Method Summary collapse
- #compile(filename) ⇒ Object
-
#initialize(bin_path = "solc") ⇒ Solidity
constructor
A new instance of Solidity.
Constructor Details
#initialize(bin_path = "solc") ⇒ Solidity
Returns a new instance of Solidity.
15 16 17 18 |
# File 'lib/platon/solidity.rb', line 15 def initialize(bin_path = "solc") @bin_path = bin_path @args = "--bin --abi --optimize" end |
Instance Method Details
#compile(filename) ⇒ Object
20 21 22 23 24 25 26 27 28 29 |
# File 'lib/platon/solidity.rb', line 20 def compile(filename) result = {} execute_solc(filename).scan(OUTPUT_REGEXP).each do |match| _file, name, bin, abi = match result[name] = {} result[name]["abi"] = abi result[name]["bin"] = bin end result end |