encoding/protowire: make package publicly available

Change-Id: I95e293c208e787a91d50e29817620535dfeaa7f2
Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/219838
Reviewed-by: Damien Neil <dneil@google.com>
diff --git a/testing/protocmp/format.go b/testing/protocmp/format.go
index f329357..2be6903 100644
--- a/testing/protocmp/format.go
+++ b/testing/protocmp/format.go
@@ -12,8 +12,8 @@
 	"strconv"
 	"strings"
 
+	"google.golang.org/protobuf/encoding/protowire"
 	"google.golang.org/protobuf/internal/detrand"
-	"google.golang.org/protobuf/internal/encoding/wire"
 	"google.golang.org/protobuf/reflect/protoreflect"
 )
 
@@ -134,8 +134,8 @@
 func transformRawFields(b protoreflect.RawFields) interface{} {
 	var vs []interface{}
 	for len(b) > 0 {
-		num, typ, n := wire.ConsumeTag(b)
-		m := wire.ConsumeFieldValue(num, typ, b[n:])
+		num, typ, n := protowire.ConsumeTag(b)
+		m := protowire.ConsumeFieldValue(num, typ, b[n:])
 		vs = append(vs, transformRawField(typ, b[n:][:m]))
 		b = b[n+m:]
 	}
@@ -145,28 +145,28 @@
 	return vs
 }
 
-func transformRawField(typ wire.Type, b protoreflect.RawFields) interface{} {
+func transformRawField(typ protowire.Type, b protoreflect.RawFields) interface{} {
 	switch typ {
-	case wire.VarintType:
-		v, _ := wire.ConsumeVarint(b)
+	case protowire.VarintType:
+		v, _ := protowire.ConsumeVarint(b)
 		return v
-	case wire.Fixed32Type:
-		v, _ := wire.ConsumeFixed32(b)
+	case protowire.Fixed32Type:
+		v, _ := protowire.ConsumeFixed32(b)
 		return v
-	case wire.Fixed64Type:
-		v, _ := wire.ConsumeFixed64(b)
+	case protowire.Fixed64Type:
+		v, _ := protowire.ConsumeFixed64(b)
 		return v
-	case wire.BytesType:
-		v, _ := wire.ConsumeBytes(b)
+	case protowire.BytesType:
+		v, _ := protowire.ConsumeBytes(b)
 		return v
-	case wire.StartGroupType:
+	case protowire.StartGroupType:
 		v := Message{}
 		for {
-			num2, typ2, n := wire.ConsumeTag(b)
-			if typ2 == wire.EndGroupType {
+			num2, typ2, n := protowire.ConsumeTag(b)
+			if typ2 == protowire.EndGroupType {
 				return v
 			}
-			m := wire.ConsumeFieldValue(num2, typ2, b[n:])
+			m := protowire.ConsumeFieldValue(num2, typ2, b[n:])
 			s := strconv.Itoa(int(num2))
 			b2, _ := v[s].(protoreflect.RawFields)
 			v[s] = append(b2, b[:n+m]...)
diff --git a/testing/protocmp/xform.go b/testing/protocmp/xform.go
index 8f26aa7..53dd8e6 100644
--- a/testing/protocmp/xform.go
+++ b/testing/protocmp/xform.go
@@ -16,7 +16,7 @@
 
 	"github.com/google/go-cmp/cmp"
 
-	"google.golang.org/protobuf/internal/encoding/wire"
+	"google.golang.org/protobuf/encoding/protowire"
 	"google.golang.org/protobuf/proto"
 	"google.golang.org/protobuf/reflect/protoreflect"
 	"google.golang.org/protobuf/reflect/protoregistry"
@@ -238,7 +238,7 @@
 
 	// Handle unknown fields.
 	for b := m.GetUnknown(); len(b) > 0; {
-		num, _, n := wire.ConsumeField(b)
+		num, _, n := protowire.ConsumeField(b)
 		s := strconv.Itoa(int(num))
 		b2, _ := mx[s].(protoreflect.RawFields)
 		mx[s] = append(b2, b[:n]...)
diff --git a/testing/prototest/prototest.go b/testing/prototest/prototest.go
index 4fccb70..55a61ae 100644
--- a/testing/prototest/prototest.go
+++ b/testing/prototest/prototest.go
@@ -14,7 +14,7 @@
 	"testing"
 
 	"google.golang.org/protobuf/encoding/prototext"
-	"google.golang.org/protobuf/internal/encoding/wire"
+	"google.golang.org/protobuf/encoding/protowire"
 	"google.golang.org/protobuf/proto"
 	pref "google.golang.org/protobuf/reflect/protoreflect"
 	"google.golang.org/protobuf/reflect/protoregistry"
@@ -488,8 +488,8 @@
 // testUnknown tests the behavior of unknown fields.
 func testUnknown(t testing.TB, m pref.Message) {
 	var b []byte
-	b = wire.AppendTag(b, 1000, wire.VarintType)
-	b = wire.AppendVarint(b, 1001)
+	b = protowire.AppendTag(b, 1000, protowire.VarintType)
+	b = protowire.AppendVarint(b, 1001)
 	m.SetUnknown(pref.RawFields(b))
 	if got, want := []byte(m.GetUnknown()), b; !bytes.Equal(got, want) {
 		t.Errorf("after setting unknown fields:\nGetUnknown() = %v, want %v", got, want)