File: generate_vector_sizes.py

package info (click to toggle)
duckdb 1.5.1-2
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 299,196 kB
  • sloc: cpp: 865,414; ansic: 57,292; python: 18,871; sql: 12,663; lisp: 11,751; yacc: 7,412; lex: 1,682; sh: 747; makefile: 558
file content (21 lines) | stat: -rw-r--r-- 579 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
supported_vector_sizes = [2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096]

result = ""
for i in range(len(supported_vector_sizes)):
    vsize = supported_vector_sizes[i]
    if i == 0:
        result += "#if"
    else:
        result += "#elif"
    result += " STANDARD_VECTOR_SIZE == " + str(vsize) + "\n"
    result += "const sel_t FlatVector::incremental_vector[] = {"
    for idx in range(vsize):
        if idx != 0:
            result += ", "
        result += str(idx)
    result += "};\n"

result += """#else
#error Unsupported VECTOR_SIZE!
#endif"""
print(result)