def to_table_data(self):
self._validate_source_data()<EOL>header_list = []<EOL>for json_record in self._buffer:<EOL><INDENT>for key in json_record:<EOL><INDENT>if key not in header_list:<EOL><INDENT>header_list.append(key)<EOL><DEDENT><DEDENT><DEDENT>self._loader.inc_table_count()<EOL>yield TableData(<EOL>self._make_table_name(),<EOL>header_list,<EOL>self._buffer,<EOL>dp_extractor=self._loader.dp_extractor,<EOL>type_hints=self._extract_type_hints(header_list),<EOL>)<EOL>
:raises ValueError:
:raises pytablereader.error.ValidationError: