GetDeclarationPointResult GetDeclarationPoint(OdId tObject, GetDeclarationPointArg tArg)
tObject. Моникёр модуля, метаданные которого необходимо получить.
tArg. Параметры выполнения операции.
Операция GetDeclarationPoint получает информацию об элементе среды разработки, на котором установлен курсор.
Операция позволяет получить информацию о функции или процедуре, если используется пользовательский метод, или о свойстве, методе, интерфейсе, классе, если используется системная сборка. Для выполнения операции укажите в поле tObject моникёр модуля, а в поле tArg.cursor координаты расположения курсора в коде.
Результатом операции будет информация об элементе среды разработки, на котором установлен курсор.
Ниже приведён пример получения информации об интерфейсе среды разработки. В запросе передаётся моникёр модуля и индексы строки и столбца, по которым расположен курсор. В ответе возвращается наименование сборки и интерфейса.
{
"GetDeclarationPoint" :
{
"tObject" :
{
"id" : "S1!M!231517"
},
"tArg" :
{
"cursor" :
{
"col" : "11",
"row" : "5"
}
}
}
}
{
"GetDeclarationPointResult" :
{
"moduleName" : "Express",
"className" : "",
"identName" : "IEaxAnalyzerOptions"
}
}
public static GetDeclarationPointResult GetDeclarationPoint(MbId mb, string moduleId)
{
var somClient = new SomPortTypeClient(); //Прокси-объект для выполнения операций
//Параметры выполнения операции
var tGet = new GetDeclarationPoint()
{
tArg = new GetDeclarationPointArg()
{
cursor = new CodePoint()
{
row = 5,
col = 11
}
},
//Формирование моникёра объекта
tObject = new OdId() { id = mb.id + "!" + FindObjectById(mb, moduleId).k }
};
//Запустить сборку
var result = somClient.GetDeclarationPoint(tGet);
return result;
}
См. также: