slicetype

package
v0.0.0-...-30c4c12 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 19, 2023 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Overview

Package slicetype implements data types and utilities to describe Bigslice types: Slices, Frames, and Tasks all carry slicetype.Types.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Assignable

func Assignable(in, out Type) bool

Assignable reports whether column type in can be assigned to out.

func Columns

func Columns(typ Type) []reflect.Type

Columns returns a slice of column types from the provided type.

func Signature

func Signature(arg, ret Type) string

Signature returns a Go function signature for a function that takes the provided arguments and returns the provided values.

func String

func String(typ Type) string

Types

type Type

type Type interface {
	// NumOut returns the number of columns.
	NumOut() int
	// Out returns the data type of the ith column.
	Out(i int) reflect.Type
	// Prefix returns the number of columns in the type
	// which are considered the type's prefix. A type's
	// prefix is the set of columns which are considered
	// the type's key columns for operations like reduce.
	Prefix() int
}

A Type is the type of a set of columns.

func Append

func Append(t1, t2 Type) Type

func Concat

func Concat(types ...Type) Type

func New

func New(types ...reflect.Type) Type

New returns a new Type using the provided column types.

func Slice

func Slice(t Type, i, j int) Type

Notes

Bugs

  • prefixes are lost when slicing a type.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL