MCPcopy Create free account
hub / github.com/chain/txvm / roll

Method roll

protocol/txvm/stack.go:55–64  ·  view source on GitHub ↗
(n int64)

Source from the content-addressed store, hash-verified

53}
54
55func (s *stack) roll(n int64) error {
56 if n < 0 || n >= int64(len(*s)) {
57 return errors.Wrapf(errors.WithData(ErrStackRange, "len(stack)", len(*s)), "roll %d", n)
58 }
59 v := *s
60 i := int64(len(v)) - 1 - n
61 item := v[i]
62 *s = append(append(v[:i], v[i+1:]...), item)
63 return nil
64}
65
66func (s *stack) bury(n int64) error {
67 if n < 0 || n >= int64(len(*s)) {

Callers 1

opRollFunction · 0.80

Calls 2

WrapfFunction · 0.92
WithDataFunction · 0.92

Tested by

no test coverage detected