|
Revision 24, 0.7 kB
(checked in by KirkMcDonald, 2 years ago)
|
CeleriD/Pyd? integration.
|
| Line | |
|---|
| 1 |
MAX_ARGS = 10 |
|---|
| 2 |
|
|---|
| 3 |
import sys |
|---|
| 4 |
old_stdout = sys.stdout |
|---|
| 5 |
sys.stdout = open('argtypes.txt', 'w') |
|---|
| 6 |
|
|---|
| 7 |
def arglist(n): |
|---|
| 8 |
parts = [] |
|---|
| 9 |
for i in range(n): |
|---|
| 10 |
parts.append(', A%s' % i) |
|---|
| 11 |
return "".join(parts) |
|---|
| 12 |
|
|---|
| 13 |
def typeidList(n): |
|---|
| 14 |
parts = [] |
|---|
| 15 |
for i in range(n): |
|---|
| 16 |
parts.append('typeid(A%s)' % i) |
|---|
| 17 |
return ", ".join(parts) |
|---|
| 18 |
|
|---|
| 19 |
for i in range(MAX_ARGS+1): |
|---|
| 20 |
print "public" |
|---|
| 21 |
print "template ArgTypes(Tr%s) {" % arglist(i) |
|---|
| 22 |
print " TypeInfo[] ArgTypes(Tr function(%s) fn) {" % arglist(i)[2:] |
|---|
| 23 |
print " return arrayOf!(TypeInfo)(%s);" % typeidList(i) |
|---|
| 24 |
print " }" |
|---|
| 25 |
print "}" |
|---|
| 26 |
print |
|---|
| 27 |
|
|---|
| 28 |
sys.stdout = old_stdout |
|---|