Class: AbiCoderRb::AbiParser
- Inherits:
-
Object
- Object
- AbiCoderRb::AbiParser
- Defined in:
- lib/abi_coder_rb/parser/abi_parser.rb
Instance Method Summary collapse
-
#initialize(abi) ⇒ AbiParser
constructor
A new instance of AbiParser.
- #parse ⇒ Object
Constructor Details
#initialize(abi) ⇒ AbiParser
Returns a new instance of AbiParser.
5 6 7 8 |
# File 'lib/abi_coder_rb/parser/abi_parser.rb', line 5 def initialize(abi) @tokenizer = AbiTokenizer.new(abi) @current_token = @tokenizer.next_token end |
Instance Method Details
#parse ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/abi_coder_rb/parser/abi_parser.rb', line 10 def parse element = case @current_token when "string", "address", "bool" then parse_simple_type when "uint", "int" then parse_numeric_type when "bytes" then parse_bytes when "(" then parse_tuple else raise ParseError, "Unexpected token: #{@current_token}" end @current_token == "[" ? parse_array(element) : element end |