package errors

import "github.com/Microsoft/opengcs/service/gcs/errors"

Index

Constants

const (
	HrUnexpected   = Hresult(-2147418113) // 0x8000FFFF
	HrNotImpl      = Hresult(-2147467263) // 0x80004001
	HrInvalidArg   = Hresult(-2147024809) // 0x80070057
	HrPointer      = Hresult(-2147467261) // 0x80004003
	HrFail         = Hresult(-2147467259) // 0x80004005
	HrAccessDenied = Hresult(-2147024891) // 0x80070005

	HrVmcomputeInvalidJSON = Hresult(-1070137075) // 0xC037010D
)

Functions

func BaseStackTrace

func BaseStackTrace(e error) errors.StackTrace

BaseStackTrace gets the earliest errors.StackTrace in the given error's cause stack. This will be the stack trace which reaches closest to the error's actual origin. It returns nil if no stack trace is found in the cause stack.

func NewContainerDoesNotExistError

func NewContainerDoesNotExistError(id string) *containerDoesNotExistError

NewContainerDoesNotExistError returns a *containerDoesNotExistError referring to the given ID.

func NewContainerExistsError

func NewContainerExistsError(id string) *containerExistsError

NewContainerExistsError returns a *containerExistsError referring to the given ID.

func NewHresultError

func NewHresultError(hresult Hresult) error

NewHresultError produces a new error with the given HRESULT.

func NewProcessDoesNotExistError

func NewProcessDoesNotExistError(pid int) *processDoesNotExistError

NewProcessDoesNotExistError returns a *processDoesNotExistError referring to the given pid.

func WrapHresult

func WrapHresult(e error, hresult Hresult) error

WrapHresult produces a new error with the given HRESULT and wrapping the given error.

Types

type Hresult

type Hresult int32

Hresult is a type corresponding to the HRESULT error type used on Windows.

func GetHresult

func GetHresult(e error) (Hresult, error)

GetHresult interates through the error's cause stack (similiarly to how the Cause function in github.com/pkg/errors operates). At the first error it encounters which implements the Hresult() method, it return's that error's HRESULT. This allows errors higher up in the cause stack to shadow the HRESULTs of errors lower down.

type StackTracer

type StackTracer interface {
	StackTrace() errors.StackTrace
}

StackTracer is an interface originating (but not exported) from the github.com/pkg/errors package. It defines something which can return a stack trace.

Source Files

errors.go

Version
v0.3.2
Published
Aug 8, 2017
Platform
darwin/amd64
Imports
3 packages
Last checked
1 minute ago

Tools for package owners.