stack

package
v0.0.0-...-986f64f Latest Latest
Warning

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

Go to latest
Published: Jan 4, 2023 License: BSD-3-Clause Imports: 6 Imported by: 0

Documentation

Overview

GLMstackpop

GLMstackpp

GLMstackpush

safetycheck

Index

Constants

View Source
const (
	Poptime  = int64(70)
	Pushtime = int64(140)
	Waittime = int64(200)
)

操作时间

View Source
const (
	Int8size       uint64 = uint64((unsafe.Sizeof(int8(1))))
	Int16size      uint64 = uint64((unsafe.Sizeof(int16(1))))
	Int32size      uint64 = uint64((unsafe.Sizeof(int32(1))))
	Int64size      uint64 = uint64((unsafe.Sizeof(int64(1))))
	Intsize        uint64 = uint64((unsafe.Sizeof(int(1))))
	Uint8size      uint64 = uint64((unsafe.Sizeof(uint8(1))))
	Uint16size     uint64 = uint64((unsafe.Sizeof(uint16(1))))
	Uint32size     uint64 = uint64((unsafe.Sizeof(uint32(1))))
	Uint64size     uint64 = uint64((unsafe.Sizeof(uint64(1))))
	Uintsize       uint64 = uint64((unsafe.Sizeof(uint(1))))
	Bytesize       uint64 = uint64((unsafe.Sizeof(byte(1))))
	Runesize       uint64 = uint64((unsafe.Sizeof(rune(1))))
	Boolsize       uint64 = uint64((unsafe.Sizeof(bool(true))))
	Float32size    uint64 = uint64((unsafe.Sizeof(float32(1.0))))
	Float64size    uint64 = uint64((unsafe.Sizeof(float64(2.0))))
	Uintptrsize    uint64 = uint64((unsafe.Sizeof(uintptr(7))))
	Complex64size  uint64 = uint64((unsafe.Sizeof(complex64(6 + 9i))))
	Complex128size uint64 = uint64((unsafe.Sizeof(complex128(8 + 9i))))
	Interfacesize  uint64 = uint64((unsafe.Sizeof(*(new(interface{})))))
)

类型大小

Variables

View Source
var (
	StackEmpty           error = errors.New("Stack,Empty")
	StackSizeExceeded    error = errors.New("Stack size exceeded")
	StackPushFail        error = errors.New("Stack push fail")
	StackPopFail         error = errors.New("Stack pop fail")
	StackClearFail       error = errors.New("Stack clear fail")
	StackAddcapFail      error = errors.New("Stack addcap fail")
	StackSubcapFail      error = errors.New("Stack subcap fail")
	StackNcapSmall       error = NewStackError(StackAddcapFail, "ncap small")
	StackNcapBig         error = NewStackError(StackSubcapFail, "ncap big")
	StackContentShortage error = NewStackError(StackPopFail, "Stack content shortage")
)

Functions

func NewStackError

func NewStackError(Op error, err string) error

Types

type GLMstack

type GLMstack = GenericLowMemoryStack

func NewGLMstack

func NewGLMstack() *GLMstack

func (*GLMstack) Addcap

func (s *GLMstack) Addcap(ncap uint64) (err error)

func (*GLMstack) Clear

func (s *GLMstack) Clear() error

func (*GLMstack) Popptr

func (s *GLMstack) Popptr(ptr unsafe.Pointer, size uint64) error

func (*GLMstack) Push

func (s *GLMstack) Push(x interface{}) error

func (*GLMstack) PushBool

func (s *GLMstack) PushBool(x bool) error

func (*GLMstack) PushByte

func (s *GLMstack) PushByte(x byte) error

func (*GLMstack) PushComplex128

func (s *GLMstack) PushComplex128(x complex128) error

func (*GLMstack) PushComplex64

func (s *GLMstack) PushComplex64(x complex64) error

func (*GLMstack) PushFloat32

func (s *GLMstack) PushFloat32(x float32) error

func (*GLMstack) PushFloat64

func (s *GLMstack) PushFloat64(x float64) error

func (*GLMstack) PushInterface

func (s *GLMstack) PushInterface(x interface{}) error

func (*GLMstack) PushRune

func (s *GLMstack) PushRune(x rune) error

func (*GLMstack) PushUintptr

func (s *GLMstack) PushUintptr(x uintptr) error

func (*GLMstack) Pushint

func (s *GLMstack) Pushint(x int) error

func (*GLMstack) Pushint16

func (s *GLMstack) Pushint16(x int16) error

func (*GLMstack) Pushint32

func (s *GLMstack) Pushint32(x int32) error

func (*GLMstack) Pushint64

func (s *GLMstack) Pushint64(x int64) error

func (*GLMstack) Pushint8

func (s *GLMstack) Pushint8(x int8) error

func (*GLMstack) Pushptr

func (s *GLMstack) Pushptr(ptr unsafe.Pointer, size uint64) error

func (*GLMstack) Pushuint

func (s *GLMstack) Pushuint(x uint) error

func (*GLMstack) Pushuint16

func (s *GLMstack) Pushuint16(x uint16) error

func (*GLMstack) Pushuint32

func (s *GLMstack) Pushuint32(x uint32) error

func (*GLMstack) Pushuint64

func (s *GLMstack) Pushuint64(x uint64) error

func (*GLMstack) Pushuint8

func (s *GLMstack) Pushuint8(x uint8) error

func (*GLMstack) Size

func (s *GLMstack) Size() uint64

func (*GLMstack) Subcap

func (s *GLMstack) Subcap(ncap uint64) (err error)

func (*GLMstack) TsAddcap

func (s *GLMstack) TsAddcap(ncap uint64) (err error)

func (*GLMstack) TsLoadpopn

func (s *GLMstack) TsLoadpopn() int64

func (*GLMstack) TsLoadpp

func (s *GLMstack) TsLoadpp() int64

func (*GLMstack) TsLoadpushn

func (s *GLMstack) TsLoadpushn() int64

func (*GLMstack) TsPopptr

func (s *GLMstack) TsPopptr(ptr unsafe.Pointer, size uint64) error

func (*GLMstack) TsPush

func (s *GLMstack) TsPush(x interface{}) error

func (*GLMstack) TsPushBool

func (s *GLMstack) TsPushBool(x bool) error

func (*GLMstack) TsPushByte

func (s *GLMstack) TsPushByte(x byte) error

func (*GLMstack) TsPushComplex128

func (s *GLMstack) TsPushComplex128(x complex128) error

func (*GLMstack) TsPushComplex64

func (s *GLMstack) TsPushComplex64(x complex64) error

func (*GLMstack) TsPushFloat32

func (s *GLMstack) TsPushFloat32(x float32) error

func (*GLMstack) TsPushFloat64

func (s *GLMstack) TsPushFloat64(x float64) error

func (*GLMstack) TsPushInterface

func (s *GLMstack) TsPushInterface(x interface{}) error

func (*GLMstack) TsPushRune

func (s *GLMstack) TsPushRune(x rune) error

func (*GLMstack) TsPushUintptr

func (s *GLMstack) TsPushUintptr(x uintptr) error

func (*GLMstack) TsPushint

func (s *GLMstack) TsPushint(x int) error

func (*GLMstack) TsPushint16

func (s *GLMstack) TsPushint16(x int16) error

func (*GLMstack) TsPushint32

func (s *GLMstack) TsPushint32(x int32) error

func (*GLMstack) TsPushint64

func (s *GLMstack) TsPushint64(x int64) error

func (*GLMstack) TsPushint8

func (s *GLMstack) TsPushint8(x int8) error

func (*GLMstack) TsPushptr

func (s *GLMstack) TsPushptr(ptr unsafe.Pointer, size uint64) error

func (*GLMstack) TsPushuint

func (s *GLMstack) TsPushuint(x uint) error

func (*GLMstack) TsPushuint16

func (s *GLMstack) TsPushuint16(x uint16) error

func (*GLMstack) TsPushuint32

func (s *GLMstack) TsPushuint32(x uint32) error

func (*GLMstack) TsPushuint64

func (s *GLMstack) TsPushuint64(x uint64) error

func (*GLMstack) TsPushuint8

func (s *GLMstack) TsPushuint8(x uint8) error

func (*GLMstack) TsSubcap

func (s *GLMstack) TsSubcap(ncap uint64) (err error)

func (*GLMstack) Tsclear

func (s *GLMstack) Tsclear() error

func (*GLMstack) Tssize

func (s *GLMstack) Tssize() uint64

type GenericLowMemoryStack

type GenericLowMemoryStack struct {
	// contains filtered or unexported fields
}

type NoTsStack

type NoTsStack interface {
	Push(x interface{}) error
	Pop() (interface{}, error)
	Size() uint64
	Clear() error
	Look(size uint64) (interface{}, error)
}

type Slicestack

type Slicestack struct {
	// contains filtered or unexported fields
}

func Newslicestack

func Newslicestack() Slicestack

func (*Slicestack) Clear

func (s *Slicestack) Clear() error

func (Slicestack) Look

func (s Slicestack) Look(size uint64) (interface{}, error)

func (*Slicestack) Pop

func (s *Slicestack) Pop() (x interface{}, err error)

func (*Slicestack) Push

func (s *Slicestack) Push(x interface{}) error

func (*Slicestack) Size

func (s *Slicestack) Size() uint64

func (*Slicestack) TsClear

func (s *Slicestack) TsClear() error

func (Slicestack) TsLook

func (s Slicestack) TsLook(size uint64) (interface{}, error)

func (*Slicestack) TsPop

func (s *Slicestack) TsPop() (x interface{}, err error)

func (*Slicestack) TsPush

func (s *Slicestack) TsPush(x interface{}) error

func (*Slicestack) TsSize

func (s *Slicestack) TsSize() uint64

type Stack

type Stack interface {
	TsStack
	NoTsStack
}

type StackError

type StackError struct {
	Op error
	// contains filtered or unexported fields
}

func (StackError) Error

func (s StackError) Error() string

func (StackError) Unwrap

func (s StackError) Unwrap() error

type TsStack

type TsStack interface {
	Tspush(x interface{}) error
	Tspop() (interface{}, error)
	Tssize() uint64
	Tsclear() error
	Tslook(size uint64) (interface{}, error)
}

Jump to

Keyboard shortcuts

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