Skip to content

Commit

Permalink
add default value and descriptions to api
Browse files Browse the repository at this point in the history
  • Loading branch information
raggledodo committed Jan 13, 2019
1 parent b02da55 commit 4e6a459
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 7 deletions.
28 changes: 25 additions & 3 deletions age/templates/api_tmpl.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,31 @@
#endif // _GENERATED_API_HPP
''')

header.api_decls = ('apis', lambda apis: '\n\n'.join(['ade::TensptrT {api} ({args});'.format(\
api = api['name'], args = ', '.join([arg['dtype'] + ' ' + arg['name']\
for arg in api['args']])) for api in apis]))
def parse_api(api):
def parse_header_args(arg):
if 'default' in arg:
defext = ' = {}'.format(arg['default'])
else:
defext = ''
return '{dtype} {name}{defext}'.format(
dtype = arg['dtype'],
name = arg['name'],
defext = defext)

if 'description' in api:
comment = '/**\n{}\n**/\n'.format(
api['description'])
else:
comment = ''
name = api['name']
args = ', '.join([parse_header_args(arg) for arg in api['args']])
return '{comment}ade::TensptrT {api} ({args});'.format(
comment = comment,
api = name,
args = args)

header.api_decls = ('apis', lambda apis: '\n\n'.join([
parse_api(api) for api in apis]))

# EXPORT
source = template.AGE_FILE(FILENAME, template.SOURCE_EXT,
Expand Down
3 changes: 2 additions & 1 deletion age/test/mock.json
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,8 @@
"name": "arg1"
}, {
"dtype": "uint8_t",
"name": "bardock"
"name": "bardock",
"default": "5"
}],
"out": "freeza(arg1, bardock)"
},
Expand Down
11 changes: 8 additions & 3 deletions age/test/ptest.py
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,8 @@
"name": "arg"
}, {
"dtype": "Arg",
"name": "arg1"
"name": "arg1",
"default": "Arg(2.4, 20)"
}, {
"dtype": "ade::TensptrT",
"name": "arg2"
Expand All @@ -73,7 +74,8 @@
}, {
"dtype": "Arg",
"name": "arg1"
}], "out": "bar4()"}
}], "out": "bar4()",
"description": "more complicated func1"}
]
}

Expand All @@ -87,8 +89,11 @@
ade::TensptrT func2 (ade::TensptrT arg, Arg arg1);
ade::TensptrT func3 (ade::TensptrT arg, Arg arg1, ade::TensptrT arg2);
ade::TensptrT func3 (ade::TensptrT arg, Arg arg1 = Arg(2.4, 20), ade::TensptrT arg2);
/**
more complicated func1
**/
ade::TensptrT func1 (ade::TensT arg, Arg arg1);
}
Expand Down

0 comments on commit 4e6a459

Please sign in to comment.