MCPcopy Index your code
hub / github.com/python/cpython / generate

Method generate

Tools/unicode/genmap_support.py:75–100  ·  view source on GitHub ↗
(self, wide=False)

Source from the content-addressed store, hash-verified

73 self.filler.write('U,')
74
75 def generate(self, wide=False):
76 if not wide:
77 self.fp.write(f"static const ucs2_t __{self.prefix}_decmap[{len(self.filler)}] = {{\n")
78 else:
79 self.fp.write(f"static const Py_UCS4 __{self.prefix}_decmap[{len(self.filler)}] = {{\n")
80
81 self.filler.printout(self.fp)
82 self.fp.write("};\n\n")
83
84 if not wide:
85 self.fp.write(f"static const struct dbcs_index {self.prefix}_decmap[256] = {{\n")
86 else:
87 self.fp.write(f"static const struct widedbcs_index {self.prefix}_decmap[256] = {{\n")
88
89 for i in range(256):
90 if i in self.decode_map and self.prefix in self.decode_map[i]:
91 m = self.decode_map
92 prefix = self.prefix
93 else:
94 self.filler.write("{", "0,", "0,", "0", "},")
95 continue
96
97 self.filler.write("{", "__%s_decmap" % prefix, "+", "%d" % m[i]['midx'],
98 ",", "%d," % m[i]['min'], "%d" % m[i]['max'], "},")
99 self.filler.printout(self.fp)
100 self.fp.write("};\n\n")
101
102
103class EncodeMapWriter:

Callers 1

mainFunction · 0.95

Calls 2

printoutMethod · 0.80
writeMethod · 0.45

Tested by

no test coverage detected