all: rename IsInitialized as CheckInitialized

An Is prefix implies it returns a boolean.
A Check prefix better suggests that it could return an error.

Change-Id: I6ffcb32099a944c656c07654c294a0980efb2d0e
Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/220338
Reviewed-by: Damien Neil <dneil@google.com>
diff --git a/encoding/protojson/decode.go b/encoding/protojson/decode.go
index 4d13d77..71c755c 100644
--- a/encoding/protojson/decode.go
+++ b/encoding/protojson/decode.go
@@ -75,7 +75,7 @@
 	if o.AllowPartial {
 		return nil
 	}
-	return proto.IsInitialized(m)
+	return proto.CheckInitialized(m)
 }
 
 type decoder struct {
diff --git a/encoding/protojson/encode.go b/encoding/protojson/encode.go
index b8c4aa2..243d158 100644
--- a/encoding/protojson/encode.go
+++ b/encoding/protojson/encode.go
@@ -123,7 +123,7 @@
 	if o.AllowPartial {
 		return enc.Bytes(), nil
 	}
-	return enc.Bytes(), proto.IsInitialized(m)
+	return enc.Bytes(), proto.CheckInitialized(m)
 }
 
 type encoder struct {
diff --git a/encoding/prototext/decode.go b/encoding/prototext/decode.go
index 9dea257..cde2c20 100644
--- a/encoding/prototext/decode.go
+++ b/encoding/prototext/decode.go
@@ -66,7 +66,7 @@
 	if o.AllowPartial {
 		return nil
 	}
-	return proto.IsInitialized(m)
+	return proto.CheckInitialized(m)
 }
 
 type decoder struct {
diff --git a/encoding/prototext/encode.go b/encoding/prototext/encode.go
index 43bd50a..7801791 100644
--- a/encoding/prototext/encode.go
+++ b/encoding/prototext/encode.go
@@ -118,7 +118,7 @@
 	if o.AllowPartial {
 		return out, nil
 	}
-	return out, proto.IsInitialized(m)
+	return out, proto.CheckInitialized(m)
 }
 
 type encoder struct {
diff --git a/internal/fuzz/wirefuzz/fuzz.go b/internal/fuzz/wirefuzz/fuzz.go
index 01463f8..0c08466 100644
--- a/internal/fuzz/wirefuzz/fuzz.go
+++ b/internal/fuzz/wirefuzz/fuzz.go
@@ -39,7 +39,7 @@
 	default:
 		panic("unmarshal ok with validation status: " + valid.String())
 	}
-	if proto.IsInitialized(m1) != nil && vinit {
+	if proto.CheckInitialized(m1) != nil && vinit {
 		panic("validation reports partial message is initialized")
 	}
 	data1, err := proto.MarshalOptions{
diff --git a/internal/impl/isinit.go b/internal/impl/checkinit.go
similarity index 92%
rename from internal/impl/isinit.go
rename to internal/impl/checkinit.go
index 4bd978f..b82341e 100644
--- a/internal/impl/isinit.go
+++ b/internal/impl/checkinit.go
@@ -12,17 +12,17 @@
 	piface "google.golang.org/protobuf/runtime/protoiface"
 )
 
-func (mi *MessageInfo) isInitialized(in piface.IsInitializedInput) (piface.IsInitializedOutput, error) {
+func (mi *MessageInfo) checkInitialized(in piface.CheckInitializedInput) (piface.CheckInitializedOutput, error) {
 	var p pointer
 	if ms, ok := in.Message.(*messageState); ok {
 		p = ms.pointer()
 	} else {
 		p = in.Message.(*messageReflectWrapper).pointer()
 	}
-	return piface.IsInitializedOutput{}, mi.isInitializedPointer(p)
+	return piface.CheckInitializedOutput{}, mi.checkInitializedPointer(p)
 }
 
-func (mi *MessageInfo) isInitializedPointer(p pointer) error {
+func (mi *MessageInfo) checkInitializedPointer(p pointer) error {
 	mi.init()
 	if !mi.needsInitCheck {
 		return nil
diff --git a/internal/impl/codec_field.go b/internal/impl/codec_field.go
index bc998d3..6204e65 100644
--- a/internal/impl/codec_field.go
+++ b/internal/impl/codec_field.go
@@ -167,7 +167,7 @@
 			if !ok {
 				return nil
 			}
-			return proto.IsInitialized(m)
+			return proto.CheckInitialized(m)
 		},
 		merge: func(dst, src pointer, f *coderFieldInfo, opts mergeOptions) {
 			sm, ok := src.WeakFields().get(f.num)
@@ -219,7 +219,7 @@
 			},
 			isInit: func(p pointer, f *coderFieldInfo) error {
 				m := asMessage(p.AsValueOf(ft).Elem())
-				return proto.IsInitialized(m)
+				return proto.CheckInitialized(m)
 			},
 			merge: mergeMessage,
 		}
@@ -257,7 +257,7 @@
 }
 
 func isInitMessageInfo(p pointer, f *coderFieldInfo) error {
-	return f.mi.isInitializedPointer(p.Elem())
+	return f.mi.checkInitializedPointer(p.Elem())
 }
 
 func sizeMessage(m proto.Message, tagsize int, _ marshalOptions) int {
@@ -307,7 +307,7 @@
 
 func isInitMessageValue(v pref.Value) error {
 	m := v.Message().Interface()
-	return proto.IsInitialized(m)
+	return proto.CheckInitialized(m)
 }
 
 var coderMessageValue = valueCoderFuncs{
@@ -374,7 +374,7 @@
 			},
 			isInit: func(p pointer, f *coderFieldInfo) error {
 				m := asMessage(p.AsValueOf(ft).Elem())
-				return proto.IsInitialized(m)
+				return proto.CheckInitialized(m)
 			},
 			merge: mergeMessage,
 		}
@@ -509,7 +509,7 @@
 func isInitMessageSliceInfo(p pointer, f *coderFieldInfo) error {
 	s := p.PointerSlice()
 	for _, v := range s {
-		if err := f.mi.isInitializedPointer(v); err != nil {
+		if err := f.mi.checkInitializedPointer(v); err != nil {
 			return err
 		}
 	}
@@ -567,7 +567,7 @@
 	s := p.PointerSlice()
 	for _, v := range s {
 		m := asMessage(v.AsValueOf(goType.Elem()))
-		if err := proto.IsInitialized(m); err != nil {
+		if err := proto.CheckInitialized(m); err != nil {
 			return err
 		}
 	}
@@ -629,7 +629,7 @@
 	list := listv.List()
 	for i, llen := 0, list.Len(); i < llen; i++ {
 		m := list.Get(i).Message().Interface()
-		if err := proto.IsInitialized(m); err != nil {
+		if err := proto.CheckInitialized(m); err != nil {
 			return err
 		}
 	}
diff --git a/internal/impl/codec_map.go b/internal/impl/codec_map.go
index dfeb944..dd5f8c7 100644
--- a/internal/impl/codec_map.go
+++ b/internal/impl/codec_map.go
@@ -320,7 +320,7 @@
 		iter := mapRange(mapv)
 		for iter.Next() {
 			val := pointerOfValue(iter.Value())
-			if err := mi.isInitializedPointer(val); err != nil {
+			if err := mi.checkInitializedPointer(val); err != nil {
 				return err
 			}
 		}
diff --git a/internal/impl/codec_message.go b/internal/impl/codec_message.go
index 08f4d5a..a86468a 100644
--- a/internal/impl/codec_message.go
+++ b/internal/impl/codec_message.go
@@ -148,8 +148,8 @@
 		mi.methods.Flags |= piface.SupportUnmarshalDiscardUnknown
 		mi.methods.Unmarshal = mi.unmarshal
 	}
-	if mi.methods.IsInitialized == nil {
-		mi.methods.IsInitialized = mi.isInitialized
+	if mi.methods.CheckInitialized == nil {
+		mi.methods.CheckInitialized = mi.checkInitialized
 	}
 	if mi.methods.Merge == nil {
 		mi.methods.Merge = mi.merge
diff --git a/proto/isinit.go b/proto/checkinit.go
similarity index 61%
rename from proto/isinit.go
rename to proto/checkinit.go
index c6cde59..ca2124d 100644
--- a/proto/isinit.go
+++ b/proto/checkinit.go
@@ -10,23 +10,28 @@
 	"google.golang.org/protobuf/runtime/protoiface"
 )
 
-// IsInitialized returns an error if any required fields in m are not set.
+// Deprecated: Use CheckInitialized instead.
 func IsInitialized(m Message) error {
-	return isInitialized(m.ProtoReflect())
+	return CheckInitialized(m)
 }
 
-// IsInitialized returns an error if any required fields in m are not set.
-func isInitialized(m protoreflect.Message) error {
-	if methods := protoMethods(m); methods != nil && methods.IsInitialized != nil {
-		_, err := methods.IsInitialized(protoiface.IsInitializedInput{
+// CheckInitialized returns an error if any required fields in m are not set.
+func CheckInitialized(m Message) error {
+	return checkInitialized(m.ProtoReflect())
+}
+
+// CheckInitialized returns an error if any required fields in m are not set.
+func checkInitialized(m protoreflect.Message) error {
+	if methods := protoMethods(m); methods != nil && methods.CheckInitialized != nil {
+		_, err := methods.CheckInitialized(protoiface.CheckInitializedInput{
 			Message: m,
 		})
 		return err
 	}
-	return isInitializedSlow(m)
+	return checkInitializedSlow(m)
 }
 
-func isInitializedSlow(m protoreflect.Message) error {
+func checkInitializedSlow(m protoreflect.Message) error {
 	md := m.Descriptor()
 	fds := md.Fields()
 	for i, nums := 0, md.RequiredNumbers(); i < nums.Len(); i++ {
@@ -43,21 +48,21 @@
 				return true
 			}
 			for i, list := 0, v.List(); i < list.Len() && err == nil; i++ {
-				err = isInitialized(list.Get(i).Message())
+				err = checkInitialized(list.Get(i).Message())
 			}
 		case fd.IsMap():
 			if fd.MapValue().Message() == nil {
 				return true
 			}
 			v.Map().Range(func(key protoreflect.MapKey, v protoreflect.Value) bool {
-				err = isInitialized(v.Message())
+				err = checkInitialized(v.Message())
 				return err == nil
 			})
 		default:
 			if fd.Message() == nil {
 				return true
 			}
-			err = isInitialized(v.Message())
+			err = checkInitialized(v.Message())
 		}
 		return err == nil
 	})
diff --git a/proto/isinit_test.go b/proto/checkinit_test.go
similarity index 90%
rename from proto/isinit_test.go
rename to proto/checkinit_test.go
index 8d8b1b6..29c9a9a 100644
--- a/proto/isinit_test.go
+++ b/proto/checkinit_test.go
@@ -17,7 +17,7 @@
 	weakpb "google.golang.org/protobuf/internal/testprotos/test/weak1"
 )
 
-func TestIsInitializedErrors(t *testing.T) {
+func TestCheckInitializedErrors(t *testing.T) {
 	type test struct {
 		m    proto.Message
 		want string
@@ -76,13 +76,13 @@
 				t.SkipNow()
 			}
 
-			err := proto.IsInitialized(tt.m)
+			err := proto.CheckInitialized(tt.m)
 			got := "<nil>"
 			if err != nil {
 				got = fmt.Sprintf("%q", err)
 			}
 			if !strings.Contains(got, tt.want) {
-				t.Errorf("IsInitialized(m):\n got: %v\nwant contains: %v\nMessage:\n%v", got, tt.want, prototext.Format(tt.m))
+				t.Errorf("CheckInitialized(m):\n got: %v\nwant contains: %v\nMessage:\n%v", got, tt.want, prototext.Format(tt.m))
 			}
 		})
 	}
diff --git a/proto/decode.go b/proto/decode.go
index 14afa29..30fd529 100644
--- a/proto/decode.go
+++ b/proto/decode.go
@@ -95,7 +95,7 @@
 	if allowPartial || (out.Flags&protoiface.UnmarshalInitialized != 0) {
 		return out, nil
 	}
-	return out, isInitialized(m)
+	return out, checkInitialized(m)
 }
 
 func (o UnmarshalOptions) unmarshalMessage(b []byte, m protoreflect.Message) error {
diff --git a/proto/doc.go b/proto/doc.go
index e1d13d7..c52d8c4 100644
--- a/proto/doc.go
+++ b/proto/doc.go
@@ -43,7 +43,7 @@
 //
 // • Reset clears the content of a message.
 //
-// • IsInitialized reports whether all required fields in a message are set.
+// • CheckInitialized reports whether all required fields in a message are set.
 //
 //
 // Optional scalar constructors
diff --git a/proto/encode.go b/proto/encode.go
index 950556f..2a8e895 100644
--- a/proto/encode.go
+++ b/proto/encode.go
@@ -136,7 +136,7 @@
 	if allowPartial {
 		return out, nil
 	}
-	return out, isInitialized(m)
+	return out, checkInitialized(m)
 }
 
 func (o MarshalOptions) marshalMessage(b []byte, m protoreflect.Message) ([]byte, error) {
diff --git a/proto/methods_test.go b/proto/methods_test.go
index e231e29..6809f04 100644
--- a/proto/methods_test.go
+++ b/proto/methods_test.go
@@ -131,7 +131,7 @@
 	}
 }
 
-func TestDecodeFastIsInitialized(t *testing.T) {
+func TestDecodeFastCheckInitialized(t *testing.T) {
 	for _, test := range testValidMessages {
 		if !test.checkFastInit {
 			continue
diff --git a/reflect/protoreflect/methods.go b/reflect/protoreflect/methods.go
index 57fc014..6be5d16 100644
--- a/reflect/protoreflect/methods.go
+++ b/reflect/protoreflect/methods.go
@@ -17,12 +17,12 @@
 type (
 	methods = struct {
 		pragma.NoUnkeyedLiterals
-		Flags         supportFlags
-		Size          func(sizeInput) sizeOutput
-		Marshal       func(marshalInput) (marshalOutput, error)
-		Unmarshal     func(unmarshalInput) (unmarshalOutput, error)
-		Merge         func(mergeInput) mergeOutput
-		IsInitialized func(isInitializedInput) (isInitializedOutput, error)
+		Flags            supportFlags
+		Size             func(sizeInput) sizeOutput
+		Marshal          func(marshalInput) (marshalOutput, error)
+		Unmarshal        func(unmarshalInput) (unmarshalOutput, error)
+		Merge            func(mergeInput) mergeOutput
+		CheckInitialized func(checkInitializedInput) (checkInitializedOutput, error)
 	}
 	supportFlags = uint64
 	sizeInput    = struct {
@@ -67,11 +67,11 @@
 		pragma.NoUnkeyedLiterals
 		Flags uint8
 	}
-	isInitializedInput = struct {
+	checkInitializedInput = struct {
 		pragma.NoUnkeyedLiterals
 		Message Message
 	}
-	isInitializedOutput = struct {
+	checkInitializedOutput = struct {
 		pragma.NoUnkeyedLiterals
 	}
 )
diff --git a/runtime/protoiface/methods.go b/runtime/protoiface/methods.go
index 1a0baa7..aeaf80a 100644
--- a/runtime/protoiface/methods.go
+++ b/runtime/protoiface/methods.go
@@ -37,8 +37,8 @@
 	// Merge merges the contents of a source message into a destination message.
 	Merge func(MergeInput) MergeOutput
 
-	// IsInitialized returns an error if any required fields in the message are not set.
-	IsInitialized func(IsInitializedInput) (IsInitializedOutput, error)
+	// CheckInitialized returns an error if any required fields in the message are not set.
+	CheckInitialized func(CheckInitializedInput) (CheckInitializedOutput, error)
 }
 
 // SupportFlags indicate support for optional features.
@@ -154,14 +154,14 @@
 	MergeComplete MergeOutputFlags = 1 << iota
 )
 
-// IsInitializedInput is input to the IsInitialized method.
-type IsInitializedInput = struct {
+// CheckInitializedInput is input to the CheckInitialized method.
+type CheckInitializedInput = struct {
 	pragma.NoUnkeyedLiterals
 
 	Message protoreflect.Message
 }
 
-// IsInitializedOutput is output from the IsInitialized method.
-type IsInitializedOutput = struct {
+// CheckInitializedOutput is output from the CheckInitialized method.
+type CheckInitializedOutput = struct {
 	pragma.NoUnkeyedLiterals
 }