Files
dolt/types/string.go
Aaron Boodman c52bf0bbf5 Convert NewBlob() away from using resolvedFutures
Instead, use a backing MemoryStore. This is part of removing Futures.
2015-10-30 12:50:56 -07:00

42 lines
656 B
Go

package types
import "github.com/attic-labs/noms/ref"
type String struct {
s string
ref *ref.Ref
}
func NewString(s string) String {
return String{s, &ref.Ref{}}
}
func (fs String) String() string {
return fs.s
}
func (fs String) Ref() ref.Ref {
return EnsureRef(fs.ref, fs)
}
func (s String) Equals(other Value) bool {
if other, ok := other.(String); ok {
return s.Ref() == other.Ref()
}
return false
}
func (fs String) Chunks() []ref.Ref {
return nil
}
var typeRefForString = MakePrimitiveTypeRef(StringKind)
func (fs String) TypeRef() TypeRef {
return typeRefForString
}
func StringFromVal(v Value) String {
return v.(String)
}