Могу ли я использовать Roslyn для переписывания кода времени компиляции?

Например у меня

class Foo: INotifyPropertyChanged {
    public event PropertyChangedEventHandler PropertyChanged;
    public int Bar {get;set;}
}

Могу ли я получить класс Foo AST и переписать Bar во время компиляции, чтобы

    public string Bar
    {
        get { return this.bar; }

        set 
        {
            if (value != this.bar)
            {
                this.phoneNumberValue = value;
                PropertyChanged(this, new PropertyChangedEventArgs("Bar"));
            }
        }
    }

.

Ответы на вопрос(2)

Ваш ответ на вопрос