Здравствуйте, hardcase, Вы писали:
H>Здравствуйте, Jack128, Вы писали:
J>>а если это свойство == null, как его получить???
H>А что хочется сделать?
Но вообще — хочется, чтоб рефакторинг Rename работал. а то даже в таком простом примере нельзя переименовать TestModule
using Nemerle.Collections;
using Nemerle.Text;
using Nemerle.Utility;
using System;
using System.Collections.Generic;
using System.Console;
using System.Linq;
module Program
{
Main() : void
{
TestModule.TestMethod();
WriteLine("Hi!");
_ = ReadLine();
}
module TestModule
{
public TestMethod(): void {}
}
}
соответственно потихоньку в коде разбираюсь..
H>Выражения типизировать можно напрямую, например как тут (см вызов TransformWhenAllTypesWouldBeInfered).
угу, сенкс, гляну.
Re: Что означает свойство ParsedTree.PExpr.TypedObject ?
Здравствуйте, Jack128, Вы писали:
J>Собственно сабж
В TypedObject помещается ветка типизированного АСТ соответствующая текущей неттипизированной ветке. Компилятором это свойство не используется, но может быть использовано в макросах. Реально его добавили для поддержки IDE.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: Что означает свойство ParsedTree.PExpr.TypedObject ?
Здравствуйте, Jack128, Вы писали:
J>Но вообще — хочется, чтоб рефакторинг Rename работал. а то даже в таком простом примере нельзя переименовать TestModule
К сожалению информация для пространств имен и некоторых типов часто теряется. Так уж написан компилятор (не рассчитывали они на использование его в IDE).
Так что без серьезного рефакторинга компилятора тут ничего не поделаешь.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.