# TODO(VPP-1187): add array host to net functions to reduce number of members and simplify JNI generation
class Array(Type):
- def __init__(self, base_type):
+ def __init__(self, base_type, name=None):
+ if name is None:
+ name = base_type.name + _ARRAY_SUFFIX
super(Array, self).__init__(
- name=base_type.name + _ARRAY_SUFFIX,
+ name=name,
java_name=base_type.java_name + _ARRAY_SUFFIX,
java_name_fqn=base_type.java_name_fqn + _ARRAY_SUFFIX,
jni_signature="[%s" % base_type.jni_signature,
self._parse_types(types)
def _parse_aliases(self, types):
+
+ # model aliases
for alias_name in self._aliases:
alias = self._aliases[alias_name]
alias_type = {"type": "type"}
'i64': SimpleType('i64', 'long', 'J', 'jlong', 'Long',
host_to_net_function='clib_host_to_net_i64',
net_to_host_function='clib_net_to_host_i64'),
- 'f64': SimpleType('f64', 'double', 'D', 'jdouble', 'Double')
+ 'f64': SimpleType('f64', 'double', 'D', 'jdouble', 'Double'),
+ 'string': SimpleType('string', 'String', 'l', 'jstring', 'Object',
+ host_to_net_function='_host_to_net_string',
+ net_to_host_function='_net_to_host_string')
})
for n, t in self._types_by_name.items():