diff --git a/encoding/textpb/decode.go b/encoding/textpb/decode.go
index 218d95f..863911f 100644
--- a/encoding/textpb/decode.go
+++ b/encoding/textpb/decode.go
@@ -164,7 +164,7 @@
 			}
 		} else {
 			// If field is a oneof, check if it has already been set.
-			if od := fd.OneofType(); od != nil {
+			if od := fd.Oneof(); od != nil {
 				idx := uint64(od.Index())
 				if seenOneofs.Has(idx) {
 					return errors.New("oneof %v is already set", od.FullName())
@@ -313,7 +313,7 @@
 		}
 		if name, ok := input.Name(); ok {
 			// Lookup EnumNumber based on name.
-			if enumVal := fd.EnumType().Values().ByName(name); enumVal != nil {
+			if enumVal := fd.Enum().Values().ByName(name); enumVal != nil {
 				return pref.ValueOf(enumVal.Number()), nil
 			}
 		}
@@ -356,7 +356,7 @@
 // unmarshalMap unmarshals given []text.Value into given protoreflect.Map.
 func (o UnmarshalOptions) unmarshalMap(input []text.Value, fd pref.FieldDescriptor, mmap pref.Map) error {
 	var nerr errors.NonFatal
-	fields := fd.MessageType().Fields()
+	fields := fd.Message().Fields()
 	keyDesc := fields.ByNumber(1)
 	valDesc := fields.ByNumber(2)
 
