MCPcopy Create free account
hub / github.com/cretz/stackparam / read_fields

Method read_fields

src/bytecode/io/reader.rs:194–215  ·  view source on GitHub ↗
(reader: &mut BlockReader, cf: &ClassFragment)

Source from the content-addressed store, hash-verified

192 }
193
194 fn read_fields(reader: &mut BlockReader, cf: &ClassFragment) -> Result<ClassFragment, Error> {
195 match reader.read_u16() {
196 Ok(fields_len) => {
197 (0..fields_len).fold(Ok(vec![]), |acc, _| {
198 match acc {
199 Ok(mut fields) => match ClassReader::read_field(reader, cf) {
200 Ok(field) => {
201 fields.push(field);
202 Ok(fields)
203 },
204 Err(err) => Err(err)
205 },
206 err@_ => err
207 }
208 })
209 },
210 Err(err) => Err(err)
211 }.map(|fields| ClassFragment {
212 fields: Some(fields),
213 ..Default::default()
214 })
215 }
216
217 fn read_field(reader: &mut BlockReader, cf: &ClassFragment) -> Result<Field, Error> {
218 match ClassReader::require_n(reader, 6, |mut r| { (r.get_u16(), r.get_u16(), r.get_u16()) }) {

Callers

nothing calls this directly

Calls 1

read_u16Method · 0.80

Tested by

no test coverage detected