Пример #1
0
 FormattedArgument FormatArgument(string argumentPrefix, ParserSuggestionArgument argument)
 => new FormattedArgument(
     argument: argument,
     displayName:
     argument.IsParams
                                         ? "[...]"
                                         : $"{argumentPrefix}{argument.Name}",
     displayType: argument.IsParams || argument.IsEnumerable
                                 ? $"<{argument.InnerType.Name}>..."
                                 : $"<{argument.Type.Name}>");
Пример #2
0
        bool Equals(ParserSuggestionArgument x, ParserSuggestionArgument y)
        {
            if (ReferenceEquals(x, null) || ReferenceEquals(y, null))
            {
                return(ReferenceEquals(x, null) && ReferenceEquals(y, null));
            }

            if (ReferenceEquals(x, y))
            {
                return(true);
            }

            if (!StringComparer.OrdinalIgnoreCase.Equals(x.Name, y.Name))
            {
                return(false);
            }

            if (x.Type != y.Type)
            {
                return(false);
            }

            if (x.IsFulfilled != y.IsFulfilled)
            {
                return(false);
            }

            if (x.IsEnumerable != y.IsEnumerable)
            {
                return(false);
            }

            if (x.IsOptional != y.IsOptional)
            {
                return(false);
            }

            if (x.IsParams != y.IsParams)
            {
                return(false);
            }

            return(true);
        }