Skip to content

Instantly share code, notes, and snippets.

@kylebrandt
Created January 28, 2020 19:33
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kylebrandt/c983a5d70d17c4b5ece283edb6d06fe7 to your computer and use it in GitHub Desktop.
Save kylebrandt/c983a5d70d17c4b5ece283edb6d06fe7 to your computer and use it in GitHub Desktop.
gen VectorVector
package dataframe
//go:generate genny -in=$GOFILE -out=vector_vector.gen.go gen "gen=byte"
type genVectorVector [][]gen
func newgenVectorVector(n int) *genVectorVector {
v := genVectorVector(make([][]gen, n))
return &v
}
func (v *genVectorVector) Set(idx int, i interface{}) {
(*v)[idx] = i.([]gen)
}
func (v *genVectorVector) Append(i interface{}) {
(*v) = append((*v), i.([]gen))
}
func (v *genVectorVector) At(i int) interface{} {
return (*v)[i]
}
func (v *genVectorVector) PointerAt(i int) interface{} {
return &(*v)[i]
}
func (v *genVectorVector) Len() int {
return len((*v))
}
func (v *genVectorVector) PrimitiveType() VectorPType {
return vectorPType(v)
}
func (v *genVectorVector) Extend(i int) {
(*v) = append((*v), make([][]gen, i)...)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment