Get symbol definition and type with object crate

I am trying to perform static analysis on machine code (figuring out what syscalls a library uses).

I am trying to use object and iced_x86 to extract the opcodes of a function, but I'm encountering a problem:

I cannot find the method to get the definition (i.e. the machine code of the function) or the ELF symbol type (needed to check if a symbol is a function or static data).

solved!!

 let body = self.file
                    .section_by_index(sym.section().index().unwrap())?
                    .data_range(sym.address(), sym.size())?.unwrap();