From fa9676557e3065d75f732622bd498d5572ba686e Mon Sep 17 00:00:00 2001 From: Jay Berkenbilt Date: Sun, 30 Jan 2022 13:56:05 -0500 Subject: QDPFJob: incorporate change to JSONHandler for array start function --- generate_auto_job | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'generate_auto_job') diff --git a/generate_auto_job b/generate_auto_job index a31fc6e4..4535c8d9 100755 --- a/generate_auto_job +++ b/generate_auto_job @@ -562,8 +562,21 @@ class Main: if isinstance(v[0], dict): is_dict = True schema_value = [{}] + subpath = f'{path}.{schema_key}' + identifier = self.to_identifier(subpath, '', False) + self.json_decls.append( + f'void begin{identifier}Array(JSON);') + self.json_decls.append( + f'void end{identifier}Array();') + self.json_init.append( + f'beginArray("{flag}",' + f' bindJSON(&Handlers::begin{identifier}Array),' + f' bindBare(&Handlers::end{identifier}Array));' + f' // {subpath}[]') build_schema(v[0], schema_value[0], - schema_key, f'{path}.{schema_key}') + schema_key, subpath) + self.json_init.append( + f'endContainer(); // {subpath}[]') elif schema_value is None: raise Exception(f'unknown schema value for {k}') s[schema_key] = schema_value @@ -573,7 +586,7 @@ class Main: else: self.handle_json_manual(schema_key, path) if flag: - self.json_init.append(f'endDict(); // {path}') + self.json_init.append(f'endContainer(); // {path}') build_schema(data['json'], self.schema, '', '') if options_seen != set(expected.keys()): -- cgit v1.2.3-54-g00ecf