Project Description
A simple reflection framework for .NET that uses IL for generating efficient reflective operations.

An example of what you can do with MirrorMirror:

//Properties:
var name = person.Get<string>("Name");
person.Set("Name", "Ivo Wiblo");

//Fields
var name = person.Get<string>("_name");
person.Set("_name", "Ivo Wiblo");

//Methods
var name = person.Invoke<string>("GetName");
person.Invoke("SetName", "Ivo Wiblo");

//Chaining
var countryName = address.Get("City._country.Name");
var countryName = address.Invoke("City._country.GetName");
address.Invoke("City._country.SetName", name ):
address.Set("City._country.Name", name ):


Roadmap:
  • Field setter
  • Methods support
  • Indexers
  • Mix properties, fields, methods and indexers when chaining
  • Setters supports in chaining
  • Add the posibility of generate one single method for accessing chains
  • Support for c# 4.0 method missing
  • Lambda expressions support for changing properties with private setters
  • Static members support
  • Generic support

Last edited Jun 4, 2010 at 5:42 AM by ivos, version 14