mobile: golang.org/x/mobile/bind/seq Index | Files

package seq

import "golang.org/x/mobile/bind/seq"

Package seq implements the machine-dependent seq serialization format.

Implementations of Transact and FinalizeRef are provided by a specific foreign language binding package, e.g. go.mobile/bind/java.

Designed only for use by the code generated by gobind. Don't try to use this directly.

Index

Package Files

ref.go seq.go string.go

Constants

const NullRefNum = 41

also known to bind/java/Seq.java and bind/objc/seq_darwin.m

Variables

var FinalizeRef func(ref *Ref)

FinalizeRef is the finalizer used on foreign objects.

var IncForeignRef func(refnum int32)

IncRef increments the foreign reference count for ref while it is in transit. The count is decremented after the ref is received and translated on the foreign side.

func Delete

func Delete(num int32)

Delete decrements the reference count and removes the pinned object from the object map when the reference count becomes zero.

func Inc

func Inc(num int32)

Inc increments the reference count for a refnum. Called from Bind_proxy_refnum functions.

func ToRefNum

func ToRefNum(obj interface{}) int32

ToRefNum increments the reference count for an object and returns its refnum.

func UTF16Encode

func UTF16Encode(s string, chars []uint16) int

UTF16Encode utf16 encodes s into chars. It returns the resulting length in units of uint16. It is assumed that the chars slice has enough room for the encoded string.

type Ref

type Ref struct {
    Bind_Num int32
}

A Ref represents a Java or Go object passed across the language boundary.

func FromRefNum

func FromRefNum(num int32) *Ref

FromRefNum returns the Ref for a refnum. If the refnum specifies a foreign object, a finalizer is set to track its lifetime.

func (*Ref) Bind_IncNum

func (r *Ref) Bind_IncNum() int32

Bind_IncNum increments the foreign reference count and return the refnum.

func (*Ref) Get

func (r *Ref) Get() interface{}

Get returns the underlying object.

Package seq imports 5 packages (graph) and is imported by 1 packages. Updated 6 days ago. Refresh now. Tools for package owners.