func (self *ClassLoader) parseClassData(name string, data []byte) *Class { cf, err := classfile.Parse(data) if err != nil { // todo panic("failed to parse class file: " + name + "!" + err.Error()) } return newClass(cf) }
func handleClass(f *zip.File) { //fmt.Printf("%v\n", f.Name) // open classfile rc, err := f.Open() // func (f *File) Open() (rc io.ReadCloser, err error) if err != nil { panic(err.Error()) } // read class data data, err := ioutil.ReadAll(rc) // func ReadAll(r io.Reader) ([]byte, error) rc.Close() if err != nil { panic(err.Error()) } // parse classfile cf, err := classfile.Parse(data) if err != nil { panic(err.Error()) } handleClassfile(cf) }