Categorygithub.com/roninzo/pointers
modulepackage
0.0.0-20231211094324-fa9b0426db61
Repository: https://github.com/roninzo/pointers.git
Documentation: pkg.go.dev

# README

Pointers package

Golang pointer helper.

Example

main.go:

package main

import (
    "fmt"
    
    "github.com/roninzo/pointers"
)

func main() {    
    if p := pointers.New(25); *p == 25 {
        fmt.Println("p is a pointer to int 25")
    }
    if p := pointers.New(0); *p == 0 {
        fmt.Println("p is a pointer to int 0")
    }
    if p := pointers.New(0, pointers.Nilify); p == nil {
        fmt.Println("p is nil")
    }
}

// Output:
// p is a pointer to int 25
// p is a pointer to int 0
// p is nil

Installation

go get github.com/roninzo/pointers

Documentation

See code comments.

Requirement

Go version >= 1.13

Tests results

% go test -race -timeout 30s -coverprofile=/var/folders/c1/t54lmvkx04715z80v5scjc6c0000gn/T/vscode-gofByx8l/go-code-cover github.com/roninzo/pointers
ok      github.com/roninzo/pointers     1.175s  coverage: 100.0% of statements

Articles

Alternatives

License

license

# Functions

Any returns a pointer to interface{} value x.
Bool returns a pointer to bool value x.
Byte returns a pointer to byte value x.
Bytes returns a pointer to []byte value x.
Complex128 returns a pointer to complex128 value x.
Complex64 returns a pointer to complex64 value x.
Duration returns a pointer to time.Duration value x.
Float32 returns a pointer to float32 value x.
Float64 returns a pointer to float64 value x.
Int returns a pointer to int value x.
Int16 returns a pointer to int16 value x.
Int32 returns a pointer to int32 value x.
Int64 returns a pointer to int64 value x.
Int8 returns a pointer to int8 value x.
New returns a pointer to any value x.
Rune returns a pointer to rune value x.
String returns a pointer to string value x.
Time returns a pointer to type value x.
Uint returns a pointer to uint value x.
Uint16 returns a pointer to uint16 value x.
Uint32 returns a pointer to uint32 value x.
Uint64 returns a pointer to uint64 value x.
Uint8 returns a pointer to uint8 value x.
Uintptr returns a pointer to uintptr value x.

# Constants

New sets to nil when input is zero value.

# Variables

Controls default behaviour for func New.