@@ -2889,26 +2889,17 @@ func (r *Resolver) resolveEnumAliases(ctx *context, aliasNames []string, builder
2889
2889
}
2890
2890
var ret []* Enum
2891
2891
for _ , aliasName := range aliasNames {
2892
- if strings .Contains (aliasName , "." ) {
2893
- pkg , err := r .lookupPackage (aliasName )
2894
- if err != nil {
2895
- ctx .addError (
2896
- ErrWithLocation (
2897
- err .Error (),
2898
- builder .WithOption ().Location (),
2899
- ),
2900
- )
2901
- return nil
2902
- }
2903
- name := r .trimPackage (pkg , aliasName )
2904
- if alias := r .resolveEnum (ctx , pkg , name , source .NewEnumBuilder (ctx .fileName (), ctx .messageName (), name )); alias != nil {
2905
- ret = append (ret , alias )
2906
- }
2907
- } else {
2908
- if alias := r .resolveEnum (ctx , ctx .file ().Package , aliasName , source .NewEnumBuilder (ctx .fileName (), ctx .messageName (), aliasName )); alias != nil {
2909
- ret = append (ret , alias )
2910
- }
2892
+ enum , err := r .resolveEnumByName (ctx , aliasName , builder )
2893
+ if err != nil {
2894
+ ctx .addError (
2895
+ ErrWithLocation (
2896
+ err .Error (),
2897
+ builder .WithOption ().Location (),
2898
+ ),
2899
+ )
2900
+ continue
2911
2901
}
2902
+ ret = append (ret , enum )
2912
2903
}
2913
2904
return ret
2914
2905
}
@@ -2962,6 +2953,11 @@ func (r *Resolver) resolveEnumValueAlias(ctx *context, enumValueName, enumValueA
2962
2953
EnumAlias : alias ,
2963
2954
Aliases : []* EnumValue {value },
2964
2955
})
2956
+ } else if value := alias .Value (ctx .file ().PackageName () + "." + enumValueAlias ); value != nil {
2957
+ enumValueAliases = append (enumValueAliases , & EnumValueAlias {
2958
+ EnumAlias : alias ,
2959
+ Aliases : []* EnumValue {value },
2960
+ })
2965
2961
}
2966
2962
aliasFQDNs = append (aliasFQDNs , fmt .Sprintf ("%q" , alias .FQDN ()))
2967
2963
}
0 commit comments