def read_xml_file(self, xml_file):
assert self.__config is not None<EOL>ffname = self.__file_full_name(xml_file)<EOL>self.logger.debug("<STR_LIT>", xml_file)<EOL>decls = self.__dcache.cached_value(ffname, self.__config)<EOL>if not decls:<EOL><INDENT>self.logger.debug("<STR_LIT>")<EOL>decls, _ = self.__parse_xml_file(ffname)<EOL>self.__dcache.update(ffname, self.__config, decls, [])<EOL><DEDENT>else:<EOL><INDENT>self.logger.debug(<EOL>"<STR_LIT>")<EOL><DEDENT>return decls<EOL>
Read generated XML file.

:param xml_file: path to xml file
:type xml_file: str

:rtype: declarations tree