| 296 | } |
| 297 | |
| 298 | fn read_attribute(reader: &mut BlockReader, cf: &ClassFragment) -> Result<Attribute, Error> { |
| 299 | match reader.read_u16() { |
| 300 | Ok(n_idx) => match reader.read_u32() { |
| 301 | Ok(a_len) => match reader.read_n(a_len as usize) { |
| 302 | Ok(mut bytes) => Ok(ClassReader::parse_attribute(n_idx, BlockReader::new(&mut Cursor::new(&mut bytes)), cf)), |
| 303 | Err(err) => Err(err) |
| 304 | }, |
| 305 | Err(err) => Err(err) |
| 306 | }, |
| 307 | Err(err) => Err(err) |
| 308 | } |
| 309 | } |
| 310 | |
| 311 | fn parse_code(len: usize, reader: &mut BlockReader) -> Vec<Instruction> { |
| 312 | /* |