X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=bindingstypes.py;h=8c3f0db8e7e520a5cbde12a338e1e4fcb2b4ebfe;hb=6700d1496b231c4b27d91a66be0d5efdb741662c;hp=e79b930a4945cc3fab64e6664508041b4207cac4;hpb=7c816f6424920cfa7b38a6630b578bbd1bf6c903;p=ldk-java diff --git a/bindingstypes.py b/bindingstypes.py index e79b930a..8c3f0db8 100644 --- a/bindingstypes.py +++ b/bindingstypes.py @@ -1,5 +1,5 @@ class TypeInfo: - def __init__(self, is_native_primitive, rust_obj, java_ty, java_fn_ty_arg, java_hu_ty, c_ty, is_const, passed_as_ptr, is_ptr, var_name, arr_len, arr_access, subty=None): + def __init__(self, is_native_primitive, rust_obj, java_ty, java_fn_ty_arg, java_hu_ty, c_ty, is_const, passed_as_ptr, is_ptr, nonnull_ptr, var_name, arr_len, arr_access, subty=None, contains_trait=False): self.is_native_primitive = is_native_primitive self.rust_obj = rust_obj self.java_ty = java_ty @@ -9,12 +9,14 @@ class TypeInfo: self.is_const = is_const self.passed_as_ptr = passed_as_ptr self.is_ptr = is_ptr + self.nonnull_ptr = nonnull_ptr self.var_name = var_name self.arr_len = arr_len self.arr_access = arr_access self.subty = subty self.pass_by_ref = is_ptr self.requires_clone = None + self.contains_trait = contains_trait def get_full_rust_ty(self): ret = "" @@ -64,10 +66,20 @@ class ConvInfo: self.to_hu_conv = to_hu_conv self.to_hu_conv_name = to_hu_conv_name self.from_hu_conv = from_hu_conv + # This is set based on docstrings in various contexts: + self.nullable = False class TraitMethInfo: - def __init__(self, fn_name, self_is_const, ret_ty_info, args_ty): + def __init__(self, fn_name, self_is_const, ret_ty_info, args_ty, docs): self.fn_name = fn_name self.self_is_const = self_is_const self.ret_ty_info = ret_ty_info self.args_ty = args_ty + self.docs = docs + +class ComplexEnumVariantInfo: + def __init__(self, var_name, var_docs, fields, tuple_variant): + self.var_name = var_name + self.var_docs = var_docs + self.fields = fields + self.tuple_variant = tuple_variant