Lines Matching refs:mode
171 def struct_ptr_name(mode): argument
173 return "result" if mode == "decode" else "input"
1866 def __init__(self, mode, entry_type_names, default_bit_size, *args, **kwargs): argument
1868 self.mode = mode
1873 def from_cddl(cddl_class, mode, *args, **kwargs): argument
1893 return (self.mode, self.entry_type_names, self.default_bit_size, self.default_max_qty)
2195 return "float16_32" if self.mode == "decode" else "float32"
2199 return "float32_64" if self.mode == "decode" else "float64"
2203 return "float" if self.mode == "decode" else "float64"
2235 if self.mode == "decode":
2390 count_arg = f', {str(sum(max_counts))}' if self.mode == 'encode' else ''
2411 if self.mode == "decode":
2452 access_arg = f', {deref_if_not_null(self.val_access())}' if self.mode == 'decode' \
2454 res_arg = f', &tmp_str' if self.mode == 'encode' \
2460 if self.mode == "decode" or self.is_unambiguous():
2563 if self.mode == "decode":
2588 if self.mode == "encode":
2592 assert self.mode == "decode", \
2604 minmax = "_minmax" if self.mode == "encode" else ""
2605 mode = self.mode
2646 type_name = self.type_name() if struct_ptr_name(self.mode) in self.full_xcode() else "void"
2666 for mode in modes:
2667 self.sorted_types[mode] = list(sorted(
2668 self.entry_types[mode], key=lambda _type: _type.depends_on(), reverse=False))
2670 self.functions[mode] = self.unique_funcs(mode)
2671 self.functions[mode] = self.used_funcs(mode)
2672 self.type_defs[mode] = self.unique_types(mode)
2688 def unique_types(self, mode): argument
2694 for mtype in self.sorted_types[mode]:
2709 def unique_funcs(self, mode): argument
2715 for mtype in self.sorted_types[mode]:
2731 def used_funcs(self, mode): argument
2739 func_type.type_name()) for func_type in self.entry_types[mode]]
2742 for func_type in reversed(self.functions[mode]):
2749 def render_forward_declaration(self, xcoder, mode): argument
2757 def render_function(self, xcoder, mode): argument
2802 def render_entry_function(self, xcoder, mode): argument
2804 func_name, func_arg = (xcoder.xcode_func_name(), struct_ptr_name(mode))
2819 def render_c_file(self, header_file_name, mode): argument
2854 def render_h_file(self, type_def_file, header_guard, mode): argument
2887 def render_type_file(self, header_guard, mode): argument
2891 for typedef in self.type_defs[mode]])
2959 for mode in modes:
2960 h_name = Path(include_prefix, Path(h_files[mode].name).name)
2963 makedirs(path.dirname(Path(c_files[mode].name).absolute()), exist_ok=True)
2967 print("Writing to " + c_files[mode].name)
2968 c_files[mode].write(self.render_c_file(h_name, mode))
2970 print("Writing to " + h_files[mode].name)
2971 h_files[mode].write(self.render_h_file(
2973 self.header_guard(h_files[mode].name), mode))
2976 type_file.write(self.render_type_file(self.header_guard(type_file.name), mode))
3213 for mode in modes:
3214 cddl_res[mode] = CodeGenerator.from_cddl(
3215 mode, cddl_contents, args.default_max_qty, mode, args.entry_types,
3220 for mode in modes:
3221 verbose_pprint(args.verbose, cddl_res[mode].my_types)
3243 def add_mode_to_fname(filename, mode): argument
3244 name = Path(filename).stem + "_" + mode + Path(filename).suffix
3251 for mode in modes:
3252 output_c[mode] = create_and_open(
3254 args.output_c or Path(cmake_dir, 'src', f'{filenames}.c'), mode))
3255 output_h[mode] = create_and_open(
3257 args.output_h or Path(cmake_dir, 'include', f'{filenames}.h'), mode))
3267 renderer = CodeRenderer(entry_types={mode: [cddl_res[mode].my_types[entry]
3268 for entry in args.entry_types] for mode in modes},