Make sure Chunks includes type.Refs and the TypeRef

Chunks shold return the futures for types.Ref values.

For typed values that have a TypeRef which has a package ref, also
include that.
This commit is contained in:
Erik Arvidsson
2015-10-12 19:34:17 -04:00
parent 9e36e080fd
commit 8565f175ee
39 changed files with 346 additions and 140 deletions

View File

@@ -75,8 +75,10 @@ func (s Commit) Ref() ref.Ref {
return s.m.Ref()
}
func (s Commit) Chunks() []types.Future {
return s.m.Chunks()
func (s Commit) Chunks() (futures []types.Future) {
futures = append(futures, s.TypeRef().Chunks()...)
futures = append(futures, s.m.Chunks()...)
return
}
func (s Commit) Value() types.Value {
@@ -124,8 +126,10 @@ func (s SetOfCommit) Ref() ref.Ref {
return s.s.Ref()
}
func (s SetOfCommit) Chunks() []types.Future {
return s.s.Chunks()
func (s SetOfCommit) Chunks() (futures []types.Future) {
futures = append(futures, s.TypeRef().Chunks()...)
futures = append(futures, s.s.Chunks()...)
return
}
// A Noms Value that describes SetOfCommit.