Генерируйте Список методов класса с типами методов

[[ $foo ]]

Или

(( ${#foo} ))

Или

let ${#foo}

Или

declare -p foo
16
задан seth 29 July 2009 в 06:50
поделиться

3 ответа

Конечно - используйте Type.GetMethods (). Вы захотите указать разные флаги привязки, чтобы получить закрытые методы и т. Д. Это довольно грубая, но работоспособная отправная точка:

using System;
using System.Linq;

class Test
{
    static void Main()
    {
        ShowMethods(typeof(DateTime));
    }

    static void ShowMethods(Type type)
    {
        foreach (var method in type.GetMethods())
        {
            var parameters = method.GetParameters();
            var parameterDescriptions = string.Join
                (", ", method.GetParameters()
                             .Select(x => x.ParameterType + " " + x.Name)
                             .ToArray());

            Console.WriteLine("{0} {1} ({2})",
                              method.ReturnType,
                              method.Name,
                              parameterDescriptions);
        }
    }
}

Вывод:

System.DateTime Add (System.TimeSpan value)
System.DateTime AddDays (System.Double value)
System.DateTime AddHours (System.Double value)
System.DateTime AddMilliseconds (System.Double value)
System.DateTime AddMinutes (System.Double value)
System.DateTime AddMonths (System.Int32 months)
System.DateTime AddSeconds (System.Double value)
System.DateTime AddTicks (System.Int64 value)
System.DateTime AddYears (System.Int32 value)
System.Int32 Compare (System.DateTime t1, System.DateTime t2)
System.Int32 CompareTo (System.Object value)
System.Int32 CompareTo (System.DateTime value)
System.Int32 DaysInMonth (System.Int32 year, System.Int32 month)

(и т. Д.)

40
ответ дан 30 November 2019 в 16:05
поделиться

Предполагая, что вы используете MySQL - MySQL не имеет встроенных функций, которые могли бы это сделать.

Это означает, что вам придется самостоятельно реализовать полнотекстовый поиск или использовать сторонний инструмент полнотекстового поиска.

  • Если вы реализуете его самостоятельно, вам следует изучить алгоритмы метафона или двойного метафона (я бы порекомендовал их вместо soundex, который не является почти так же хорошо справляется с задачами этого типа), чтобы хранить фоенетические представления всех ваших слов. Однако создание собственного полнотекстового поиска - задача не для слабонервных. Не пытайтесь это сделать, если не считаете себя мастером баз данных.
  • Если вам нужен инструмент стороннего производителя, Lucene - это то, что вам нужно. Он перенесен на множество разных языков / платформ , включая PHP - вы не
2
ответ дан 30 November 2019 в 16:05
поделиться

Вы можете легко добраться до этих списков с помощью отражения. например, с Type.GetMethods ()

2
ответ дан 30 November 2019 в 16:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: