vapi: add support for defaults in typedefs
refactored out of Neale's change: https://gerrit.fd.io/r/c/vpp/+/26276 Type: refactor Change-Id: Ibb0c019856dc44640e94d6d80a5d119a6296d95c Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com> (cherry picked from commit a751d8d61fe5880f6d447e63b81e2df30561e9f9)
This commit is contained in:

committed by
Ole Trøan

parent
4ec36c5535
commit
d7a32ebd99
@ -19,13 +19,13 @@ class CField(Field):
|
||||
else:
|
||||
return "vl_api_string_t %s;" % (self.name)
|
||||
else:
|
||||
if self.len is not None:
|
||||
if self.len is not None and type(self.len) != dict:
|
||||
return "%s %s[%d];" % (self.type.get_c_name(), self.name, self.len)
|
||||
else:
|
||||
return "%s %s;" % (self.type.get_c_name(), self.name)
|
||||
|
||||
def get_swap_to_be_code(self, struct, var):
|
||||
if self.len is not None:
|
||||
if self.len is not None and type(self.len) != dict:
|
||||
if self.len > 0:
|
||||
return "do { unsigned i; for (i = 0; i < %d; ++i) { %s } }"\
|
||||
" while(0);" % (
|
||||
@ -46,7 +46,7 @@ class CField(Field):
|
||||
return self.type.get_swap_to_be_code(struct, "%s" % var)
|
||||
|
||||
def get_swap_to_host_code(self, struct, var):
|
||||
if self.len is not None:
|
||||
if self.len is not None and type(self.len) != dict:
|
||||
if self.len > 0:
|
||||
return "do { unsigned i; for (i = 0; i < %d; ++i) { %s } }"\
|
||||
" while(0);" % (
|
||||
|
@ -29,6 +29,10 @@ class Field(object):
|
||||
def __str__(self):
|
||||
if self.len is None:
|
||||
return "Field(name: %s, type: %s)" % (self.name, self.type)
|
||||
elif type(self.len) == dict:
|
||||
return "Field(name: %s, type: %s, length: %s)" % (self.name,
|
||||
self.type,
|
||||
self.len)
|
||||
elif self.len > 0:
|
||||
return "Field(name: %s, type: %s, length: %s)" % (self.name,
|
||||
self.type,
|
||||
|
Reference in New Issue
Block a user