src.elv.sh@v0.21.0-dev.0.20240515223629-06979efb9a2a/pkg/eval/vars/vars.go (about)

     1  // Package vars contains basic types for manipulating Elvish variables.
     2  package vars
     3  
     4  // Var represents an Elvish variable.
     5  type Var interface {
     6  	Set(v any) error
     7  	Get() any
     8  }
     9  
    10  // UnsettableVar represents an Elvish variable that can be in an unset state.
    11  type UnsettableVar interface {
    12  	Var
    13  	Unset() error
    14  	IsSet() bool
    15  }