Documentation
¶
Index ¶
- Constants
- Variables
- func AddBoolArg[T ~bool](inst *Fffi2, v T)
- func AddBoolSliceArg[T ~bool](inst *Fffi2, vs []T)
- func AddBytesArg(inst *Fffi2, v []byte)
- func AddComplex128Arg[T ~complex128](inst *Fffi2, v T)
- func AddComplex64Arg[T ~complex64](inst *Fffi2, v T)
- func AddComplex64Array2Arg[T ~complex64](inst *Fffi2, v [2]T)
- func AddFloat32Arg[T ~float32](inst *Fffi2, v T)
- func AddFloat32Array2Arg[T ~float32](inst *Fffi2, v [2]T)
- func AddFloat32Array3Arg[T ~float32](inst *Fffi2, v [3]T)
- func AddFloat32Array4Arg[T ~float32](inst *Fffi2, v [4]T)
- func AddFloat32SliceArg[T ~float32](inst *Fffi2, vs []T)
- func AddFloat64Arg[T ~float64](inst *Fffi2, v T)
- func AddFloat64Array4Arg[T ~float64](inst *Fffi2, v [4]T)
- func AddFloat64SliceArg[T ~float64](inst *Fffi2, vs []T)
- func AddInt16Arg[T ~int16](inst *Fffi2, v T)
- func AddInt16SliceArg[T ~int16](inst *Fffi2, vs []T)
- func AddInt32Arg[T ~int32](inst *Fffi2, v T)
- func AddInt32SliceArg[T ~int32](inst *Fffi2, vs []T)
- func AddInt64Arg[T ~int64](inst *Fffi2, v T)
- func AddInt8Arg[T ~int8](inst *Fffi2, v T)
- func AddInt8SliceArg[T ~int8](inst *Fffi2, vs []T)
- func AddIntArg[T ~int](inst *Fffi2, v T)
- func AddIntArray2Arg[T ~int](inst *Fffi2, v [2]T)
- func AddIntArray3Arg[T ~int](inst *Fffi2, v [3]T)
- func AddIntArray4Arg[T ~int](inst *Fffi2, v [4]T)
- func AddIntSliceArg[T ~int](inst *Fffi2, vs []T)
- func AddRuneArg[T ~rune](inst *Fffi2, v T)
- func AddRuneSliceArg[T ~rune](inst *Fffi2, vs []T)
- func AddStringArg[T ~string](inst *Fffi2, v T)
- func AddStringsArg[T ~string](inst *Fffi2, vs []T)
- func AddUint16Arg[T ~uint16](inst *Fffi2, v T)
- func AddUint16SliceArg[T ~uint16](inst *Fffi2, vs []T)
- func AddUint32Arg[T ~uint32](inst *Fffi2, v T)
- func AddUint32SliceArg[T ~uint32](inst *Fffi2, vs []T)
- func AddUint64Arg[T ~uint64](inst *Fffi2, v T)
- func AddUint8Arg[T ~uint8](inst *Fffi2, v T)
- func AddUint8SliceArg[T ~uint8](inst *Fffi2, vs []T)
- func AddUintArg[T ~uint](inst *Fffi2, v T)
- func AddUintSliceArg[T ~uint](inst *Fffi2, vs []T)
- func AddUintptrArg[T ~uintptr](inst *Fffi2, v T)
- func GetBoolRetr[T ~bool](inst *Fffi2) (r T)
- func GetBoolSliceRetr[T ~bool](inst *Fffi2) (r []T)
- func GetBytesRetr[T byte](inst *Fffi2) (r []byte)
- func GetComplex128Retr[T ~complex128](inst *Fffi2) (r T)
- func GetComplex64Retr[T ~complex64](inst *Fffi2) (r T)
- func GetFloat32Array2Retr[T ~float32](inst *Fffi2) (r [2]T)
- func GetFloat32Array3Retr[T ~float32](inst *Fffi2) (r [3]T)
- func GetFloat32Array4Retr[T ~float32](inst *Fffi2) (r [4]T)
- func GetFloat32Retr[T ~float32](inst *Fffi2) (r T)
- func GetFloat32SliceRetr[T ~float32](inst *Fffi2) (r []T)
- func GetFloat64Retr[T ~float64](inst *Fffi2) (r T)
- func GetFloat64SliceRetr[T ~float64](inst *Fffi2) (r []T)
- func GetInt16Retr[T ~int16](inst *Fffi2) (r T)
- func GetInt16SliceRetr[T ~int16](inst *Fffi2) (r []T)
- func GetInt32Retr[T ~int32](inst *Fffi2) (r T)
- func GetInt32SliceRetr[T ~int32](inst *Fffi2) (r []T)
- func GetInt64Retr[T ~int64](inst *Fffi2) (r T)
- func GetInt64SliceRetr[T ~int64](inst *Fffi2) (r []T)
- func GetInt8Retr[T ~int8](inst *Fffi2) (r T)
- func GetInt8SliceRetr[T ~int8](inst *Fffi2) (r []T)
- func GetIntArray2Retr[T ~int](inst *Fffi2) (r [2]T)
- func GetIntArray4Retr[T ~int](inst *Fffi2) (r [4]T)
- func GetIntRetr[T ~int](inst *Fffi2) (r T)
- func GetIntSliceRetr[T ~int](inst *Fffi2) (r []T)
- func GetStringRetr[T ~string](inst *Fffi2) (r T)
- func GetUint16Retr[T ~uint16](inst *Fffi2) (r T)
- func GetUint16SliceRetr[T ~uint16](inst *Fffi2) (r []T)
- func GetUint32Retr[T ~uint32](inst *Fffi2) (r T)
- func GetUint32SliceRetr[T ~uint32](inst *Fffi2) (r []T)
- func GetUint64Retr[T ~uint64](inst *Fffi2) (r T)
- func GetUint64SliceRetr[T ~uint64](inst *Fffi2) (r []T)
- func GetUint8Retr[T ~uint8](inst *Fffi2) (r T)
- func GetUint8SliceRetr[T ~uint8](inst *Fffi2) (r []T)
- func GetUintRetr[T ~uint](inst *Fffi2) (r T)
- func GetUintSliceRetr[T ~uint](inst *Fffi2) (r []T)
- func GetUintptrRetr[T ~uintptr](inst *Fffi2) (r T)
- type ByteOrder
- type Channel
- type Fffi2
- type ForeignPtrInterface
- type FuncProcId
- type InlineIoChannel
- type Marshaller
- func (inst *Marshaller) GetWrittenBytes() int
- func (inst *Marshaller) ResetWrittenBytes()
- func (inst *Marshaller) WriteBool(v bool)
- func (inst *Marshaller) WriteBytes(v []byte)
- func (inst *Marshaller) WriteComplex128(v complex128)
- func (inst *Marshaller) WriteComplex64(v complex64)
- func (inst *Marshaller) WriteFloat32(v float32)
- func (inst *Marshaller) WriteFloat64(v float64)
- func (inst *Marshaller) WriteInt(v int)
- func (inst *Marshaller) WriteInt16(v int16)
- func (inst *Marshaller) WriteInt32(v int32)
- func (inst *Marshaller) WriteInt64(v int64)
- func (inst *Marshaller) WriteInt8(v int8)
- func (inst *Marshaller) WriteNilSlice()
- func (inst *Marshaller) WriteSliceLength(l int)
- func (inst *Marshaller) WriteString(v string)
- func (inst *Marshaller) WriteUInt(v uint)
- func (inst *Marshaller) WriteUInt16(v uint16)
- func (inst *Marshaller) WriteUInt32(v uint32)
- func (inst *Marshaller) WriteUInt64(v uint64)
- func (inst *Marshaller) WriteUInt8(v uint8)
- func (inst *Marshaller) WriteUint(v uint)
- type Unmarshaller
- func (inst *Unmarshaller) ReadBool() (v bool)
- func (inst *Unmarshaller) ReadBytes() (v []byte)
- func (inst *Unmarshaller) ReadComplex128() (v complex128)
- func (inst *Unmarshaller) ReadComplex64() (v complex64)
- func (inst *Unmarshaller) ReadFloat32() (v float32)
- func (inst *Unmarshaller) ReadFloat64() (v float64)
- func (inst *Unmarshaller) ReadInt() (v int)
- func (inst *Unmarshaller) ReadInt16() (v int16)
- func (inst *Unmarshaller) ReadInt32() (v int32)
- func (inst *Unmarshaller) ReadInt64() (v int64)
- func (inst *Unmarshaller) ReadInt8() (v int8)
- func (inst *Unmarshaller) ReadString() (v string)
- func (inst *Unmarshaller) ReadUInt16() (v uint16)
- func (inst *Unmarshaller) ReadUInt32() (v uint32)
- func (inst *Unmarshaller) ReadUInt64() (v uint64)
- func (inst *Unmarshaller) ReadUInt8() (v uint8)
- func (inst *Unmarshaller) ReadUint() (v uint)
- func (inst *Unmarshaller) ReadUintptr() (v uintptr)
Constants ¶
View Source
const FlushFuncProcId = FuncProcId(math.MaxUint32)
Variables ¶
View Source
var DefaultErrorHandler = func(err error) {}
View Source
var StringAllocationError = errors.New("allocated string buffer does not have correct length")
Functions ¶
func AddBoolArg ¶
func AddBoolSliceArg ¶
func AddBytesArg ¶
func AddComplex128Arg ¶
func AddComplex128Arg[T ~complex128](inst *Fffi2, v T)
func AddComplex64Arg ¶
func AddComplex64Array2Arg ¶
func AddFloat32Arg ¶
func AddFloat32Array2Arg ¶
func AddFloat32Array3Arg ¶
func AddFloat32Array4Arg ¶
func AddFloat32SliceArg ¶
func AddFloat64Arg ¶
func AddFloat64Array4Arg ¶
func AddFloat64SliceArg ¶
func AddInt16Arg ¶
func AddInt16SliceArg ¶
func AddInt32Arg ¶
func AddInt32SliceArg ¶
func AddInt64Arg ¶
func AddInt8Arg ¶
func AddInt8SliceArg ¶
func AddIntArray2Arg ¶
func AddIntArray3Arg ¶
func AddIntArray4Arg ¶
func AddIntSliceArg ¶
func AddRuneArg ¶
func AddRuneSliceArg ¶
func AddStringArg ¶
func AddStringsArg ¶
func AddUint16Arg ¶
func AddUint16SliceArg ¶
func AddUint32Arg ¶
func AddUint32SliceArg ¶
func AddUint64Arg ¶
func AddUint8Arg ¶
func AddUint8SliceArg ¶
func AddUintArg ¶
func AddUintSliceArg ¶
func AddUintptrArg ¶
func GetBoolRetr ¶
func GetBoolSliceRetr ¶
func GetBytesRetr ¶
func GetComplex128Retr ¶
func GetComplex128Retr[T ~complex128](inst *Fffi2) (r T)
func GetComplex64Retr ¶
func GetFloat32Array2Retr ¶
func GetFloat32Array3Retr ¶
func GetFloat32Array4Retr ¶
func GetFloat32Retr ¶
func GetFloat32SliceRetr ¶
func GetFloat64Retr ¶
func GetFloat64SliceRetr ¶
func GetInt16Retr ¶
func GetInt16SliceRetr ¶
func GetInt32Retr ¶
func GetInt32SliceRetr ¶
func GetInt64Retr ¶
func GetInt64SliceRetr ¶
func GetInt8Retr ¶
func GetInt8SliceRetr ¶
func GetIntArray2Retr ¶
func GetIntArray4Retr ¶
func GetIntRetr ¶
func GetIntSliceRetr ¶
func GetStringRetr ¶
func GetUint16Retr ¶
func GetUint16SliceRetr ¶
func GetUint32Retr ¶
func GetUint32SliceRetr ¶
func GetUint64Retr ¶
func GetUint64SliceRetr ¶
func GetUint8Retr ¶
func GetUint8SliceRetr ¶
func GetUintRetr ¶
func GetUintSliceRetr ¶
func GetUintptrRetr ¶
Types ¶
type Channel ¶
type Channel interface { Marshaller() *Marshaller Unmarshaller() *Unmarshaller CallFunction() (err error) Flush() }
type Fffi2 ¶
type Fffi2 struct {
// contains filtered or unexported fields
}
func (*Fffi2) AddFunctionId ¶
func (inst *Fffi2) AddFunctionId(id FuncProcId)
func (*Fffi2) AddProcedureId ¶
func (inst *Fffi2) AddProcedureId(id FuncProcId)
func (*Fffi2) CallFunction ¶
func (*Fffi2) CallProcedure ¶
func (inst *Fffi2) CallProcedure()
type ForeignPtrInterface ¶
type ForeignPtrInterface interface {
// contains filtered or unexported methods
}
ForeignPtrInterface For documentation only (contains private methods)
type FuncProcId ¶
type FuncProcId uint32
type InlineIoChannel ¶
type InlineIoChannel struct {
// contains filtered or unexported fields
}
func NewInlineChannel ¶
func (*InlineIoChannel) CallFunction ¶
func (inst *InlineIoChannel) CallFunction() (err error)
func (*InlineIoChannel) Flush ¶
func (inst *InlineIoChannel) Flush()
func (*InlineIoChannel) Marshaller ¶
func (inst *InlineIoChannel) Marshaller() *Marshaller
func (*InlineIoChannel) SetInOut ¶
func (inst *InlineIoChannel) SetInOut(in *bufio.Reader, out *bufio.Writer)
func (*InlineIoChannel) Unmarshaller ¶
func (inst *InlineIoChannel) Unmarshaller() *Unmarshaller
type Marshaller ¶
type Marshaller struct {
// contains filtered or unexported fields
}
func NewMarshaller ¶
func (*Marshaller) GetWrittenBytes ¶
func (inst *Marshaller) GetWrittenBytes() int
func (*Marshaller) ResetWrittenBytes ¶
func (inst *Marshaller) ResetWrittenBytes()
func (*Marshaller) WriteBool ¶
func (inst *Marshaller) WriteBool(v bool)
func (*Marshaller) WriteBytes ¶
func (inst *Marshaller) WriteBytes(v []byte)
func (*Marshaller) WriteComplex128 ¶
func (inst *Marshaller) WriteComplex128(v complex128)
func (*Marshaller) WriteComplex64 ¶
func (inst *Marshaller) WriteComplex64(v complex64)
func (*Marshaller) WriteFloat32 ¶
func (inst *Marshaller) WriteFloat32(v float32)
func (*Marshaller) WriteFloat64 ¶
func (inst *Marshaller) WriteFloat64(v float64)
func (*Marshaller) WriteInt ¶
func (inst *Marshaller) WriteInt(v int)
func (*Marshaller) WriteInt16 ¶
func (inst *Marshaller) WriteInt16(v int16)
func (*Marshaller) WriteInt32 ¶
func (inst *Marshaller) WriteInt32(v int32)
func (*Marshaller) WriteInt64 ¶
func (inst *Marshaller) WriteInt64(v int64)
func (*Marshaller) WriteInt8 ¶
func (inst *Marshaller) WriteInt8(v int8)
func (*Marshaller) WriteNilSlice ¶
func (inst *Marshaller) WriteNilSlice()
func (*Marshaller) WriteSliceLength ¶
func (inst *Marshaller) WriteSliceLength(l int)
func (*Marshaller) WriteString ¶
func (inst *Marshaller) WriteString(v string)
func (*Marshaller) WriteUInt ¶
func (inst *Marshaller) WriteUInt(v uint)
func (*Marshaller) WriteUInt16 ¶
func (inst *Marshaller) WriteUInt16(v uint16)
func (*Marshaller) WriteUInt32 ¶
func (inst *Marshaller) WriteUInt32(v uint32)
func (*Marshaller) WriteUInt64 ¶
func (inst *Marshaller) WriteUInt64(v uint64)
func (*Marshaller) WriteUInt8 ¶
func (inst *Marshaller) WriteUInt8(v uint8)
func (*Marshaller) WriteUint ¶
func (inst *Marshaller) WriteUint(v uint)
type Unmarshaller ¶
type Unmarshaller struct {
// contains filtered or unexported fields
}
func NewUnmarshaller ¶
func (*Unmarshaller) ReadBool ¶
func (inst *Unmarshaller) ReadBool() (v bool)
func (*Unmarshaller) ReadBytes ¶
func (inst *Unmarshaller) ReadBytes() (v []byte)
func (*Unmarshaller) ReadComplex128 ¶
func (inst *Unmarshaller) ReadComplex128() (v complex128)
func (*Unmarshaller) ReadComplex64 ¶
func (inst *Unmarshaller) ReadComplex64() (v complex64)
func (*Unmarshaller) ReadFloat32 ¶
func (inst *Unmarshaller) ReadFloat32() (v float32)
func (*Unmarshaller) ReadFloat64 ¶
func (inst *Unmarshaller) ReadFloat64() (v float64)
func (*Unmarshaller) ReadInt ¶
func (inst *Unmarshaller) ReadInt() (v int)
func (*Unmarshaller) ReadInt16 ¶
func (inst *Unmarshaller) ReadInt16() (v int16)
func (*Unmarshaller) ReadInt32 ¶
func (inst *Unmarshaller) ReadInt32() (v int32)
func (*Unmarshaller) ReadInt64 ¶
func (inst *Unmarshaller) ReadInt64() (v int64)
func (*Unmarshaller) ReadInt8 ¶
func (inst *Unmarshaller) ReadInt8() (v int8)
func (*Unmarshaller) ReadString ¶
func (inst *Unmarshaller) ReadString() (v string)
func (*Unmarshaller) ReadUInt16 ¶
func (inst *Unmarshaller) ReadUInt16() (v uint16)
func (*Unmarshaller) ReadUInt32 ¶
func (inst *Unmarshaller) ReadUInt32() (v uint32)
func (*Unmarshaller) ReadUInt64 ¶
func (inst *Unmarshaller) ReadUInt64() (v uint64)
func (*Unmarshaller) ReadUInt8 ¶
func (inst *Unmarshaller) ReadUInt8() (v uint8)
func (*Unmarshaller) ReadUint ¶
func (inst *Unmarshaller) ReadUint() (v uint)
func (*Unmarshaller) ReadUintptr ¶
func (inst *Unmarshaller) ReadUintptr() (v uintptr)
Click to show internal directories.
Click to hide internal directories.