Module: EraXML
- Defined in:
- lib/thinp_xml/era/emit.rb,
lib/thinp_xml/era/parse.rb,
lib/thinp_xml/era/builder.rb,
lib/thinp_xml/era/metadata.rb
Overview
Defined Under Namespace
Modules: EraEmitterDetail, EraParseDetail
Classes: Builder, Metadata, Superblock, Writeset, WritesetBit
Constant Summary
collapse
- SUPERBLOCK_FIELDS =
[[:uuid, :string],
[:block_size, :int],
[:nr_blocks, :int],
[:current_era, :int]]
- WRITESET_FIELDS =
[[:era, :int],
[:nr_bits, :int],
[:bits, :array]]
- BIT_FIELDS =
[[:block, :int],
[:value, :bool]]
Class Method Summary
collapse
Instance Method Summary
collapse
Class Method Details
.field_names(flds) ⇒ Object
14
15
16
|
# File 'lib/thinp_xml/era/metadata.rb', line 14
def self.field_names(flds)
flds.map {|p| p[0]}
end
|
Instance Method Details
#read_xml(io) ⇒ Object
83
84
85
86
87
|
# File 'lib/thinp_xml/era/parse.rb', line 83
def read_xml(io)
l = EraParseDetail::Listener.new
REXML::Document.parse_stream(io, l)
l.metadata
end
|
#write_xml(md, io) ⇒ Object
43
44
45
46
47
48
49
|
# File 'lib/thinp_xml/era/emit.rb', line 43
def write_xml(md, io)
e = EraEmitterDetail::EraEmitter.new(io)
e.emit_superblock(md.superblock) do
e.emit_writesets(md.writesets)
e.emit_era_array(md.era_array)
end
end
|