Index: go/src/infra/gae/libs/gae/prod/datastore_key.go |
diff --git a/go/src/infra/gae/libs/gae/prod/datastore_key.go b/go/src/infra/gae/libs/gae/prod/datastore_key.go |
index 2b823114f3c6006d2124ba715420fbea9d1d47fe..13a7766ff4b79486685934cc5a61b2567f408482 100644 |
--- a/go/src/infra/gae/libs/gae/prod/datastore_key.go |
+++ b/go/src/infra/gae/libs/gae/prod/datastore_key.go |
@@ -17,12 +17,7 @@ type dsKeyImpl struct { |
var _ gae.DSKey = dsKeyImpl{} |
-func (k dsKeyImpl) Equal(other gae.DSKey) bool { return k.Key.Equal(dsF2R(other)) } |
-func (k dsKeyImpl) Parent() gae.DSKey { return dsR2F(k.Key.Parent()) } |
-func (k dsKeyImpl) Root() gae.DSKey { return helper.DSKeyRoot(k) } |
-func (k dsKeyImpl) Valid(ns string, allowSpecial bool) bool { |
- return helper.DSKeyValid(k, ns, allowSpecial) |
-} |
+func (k dsKeyImpl) Parent() gae.DSKey { return dsR2F(k.Key.Parent()) } |
// dsR2F (DS real-to-fake) converts an SDK Key to a gae.DSKey |
func dsR2F(k *datastore.Key) gae.DSKey { |
@@ -57,6 +52,10 @@ func dsF2R(k gae.DSKey) *datastore.Key { |
// trip through the proto encoding. |
rkey, err := datastore.DecodeKey(helper.DSKeyEncode(k)) |
if err != nil { |
+ // should never happen in a good program, but it's not ignorable, and |
+ // passing an error back makes this function too cumbersome (and it causes |
+ // this `if err != nil { panic(err) }` logic to show up in a bunch of |
+ // places. Realistically, everything should hit the early exit clause above. |
panic(err) |
} |
return rkey |