18 lines
361 B
Ruby
18 lines
361 B
Ruby
# frozen_string_literal: true
|
|
|
|
module WAG
|
|
class Element
|
|
include WAG::Encodable
|
|
|
|
attr_reader :table_id, :labels
|
|
|
|
def initialize(table_id, *labels)
|
|
@table_id = table_id.to_i
|
|
@labels = labels.map { |l| WAG::Label.from(l) }
|
|
end
|
|
|
|
def to_sexpr
|
|
[:elem, [:"i32.const", table_id]].concat(labels.map(&:to_sexpr))
|
|
end
|
|
end
|
|
end
|