def GetCppWrapperType(kind): if isinstance(kind, (mojom.Struct, mojom.Enum)): return GetNameForKind(kind) if isinstance(kind, mojom.Array): return "mojo::Array<%s >" % GetCppArrayArgWrapperType(kind.kind) if isinstance(kind, mojom.Interface): return "mojo::Passable<%sHandle>" % kind.name if kind.spec == 's': return "mojo::String" if mojom_generator.IsHandleKind(kind): return "mojo::Passable<%s>" % _kind_to_cpp_type[kind] return _kind_to_cpp_type[kind]
def GetCppWrapperType(kind): if isinstance(kind, mojom.Struct): return kind.GetFullName("::") if isinstance(kind, mojom.Array): return "mojo::Array<%s >" % GetCppArrayArgWrapperType(kind.kind) if isinstance(kind, mojom.Interface): return "mojo::Passable<typename mojo::Interface<%s>::Handle>" % kind.name if kind.spec == 's': return "mojo::String" if mojom_generator.IsHandleKind(kind): return "mojo::Passable<%s>" % _kind_to_cpp_type[kind] return _kind_to_cpp_type[kind]
def IsStructWithHandles(struct): for pf in struct.packed.packed_fields: if mojom_generator.IsHandleKind(pf.field.kind): return True return False