Interface NativeInvocation<T>

    • Method Detail

      • invokeStatic

        NativeInvocation invokeStatic​(String methodName,
                                      InvocationArg... args)
        Invokes a static method of the class that is set for this NativeInvocation
        Parameters:
        methodName - The static method name
        args - The arguments to use for invoking the static method
        Returns:
        A NativeInvocation instance containing the result of the invocation
      • invokeAsync

        void invokeAsync​(long functionPointerAddress,
                         String methodName,
                         InvocationArg... args)
        Invokes asynchronously a method of the instance of the class that is set for this NativeInvocation. The result of the invocation should be provided later using the performCallback method of a NativeCallbackSupport class. Any possible returned objects from the actual synchronous invocation of the defined method will be dropped.
        Parameters:
        functionPointerAddress - The address of the function pointer that will be used later in the native side in order to actually paerform the callback.
        methodName - The method name
        args - The arguments to use when invoking the callback method (the functionPointer)
      • invokeToChannel

        void invokeToChannel​(long channelAddress,
                             String methodName,
                             InvocationArg... args)
        Invokes a method of the instance of the class that is set for this NativeInvocation. The result of the invocation should be provided later using the doCallback method of a NativeCallbackToRustChannelSupport class. Any possible returned objects from the actual synchronous invocation of the defined method will be dropped.
        Parameters:
        channelAddress - The memory address of the channel
        methodName - The method name
        args - The arguments
      • initializeCallbackChannel

        void initializeCallbackChannel​(long channelAddress)
        Initialize a callback channel for this NativeInvocation. The channel can be used by Java to send values to Rust using the doCallback method of a NativeCallbackToRustChannelSupport class.
        Parameters:
        channelAddress - The memory address of the channel
      • field

        NativeInvocation field​(String fieldName)
        Retrieves the instance held under the Field fieldName
        Parameters:
        fieldName - The name of the field to retrieve
        Returns:
        A NativeInvocation instance containing the defined field.
      • cloneInstance

        static <T> NativeInvocation cloneInstance​(NativeInvocation from)
        Clones a NativeInvocation
        Type Parameters:
        T - Generically defined return type
        Parameters:
        from - The object to clone.
        Returns:
        a NativeInvocation instance.