private static MethodInfo GetImplicitConversionOperator(ResolutionContext context)
        {
            var destinationType = context.DestinationType;

            if (PrimitiveExtensions.IsNullableType(destinationType))
            {
                destinationType = PrimitiveExtensions.GetTypeOfNullable(destinationType);
            }
            var sourceTypeMethod = TypeExtensions.GetDeclaredMethods(context.SourceType)
                                   .FirstOrDefault(
                mi => mi.IsPublic && mi.IsStatic && mi.Name == "op_Implicit" && mi.ReturnType == destinationType);

            return(sourceTypeMethod ?? destinationType.GetMethod("op_Implicit", new[] { context.SourceType }));
        }