internal AccessReflector(Type type, object instanceObject, BindingReflector reflector)
 {
     m_Type           = type;
     m_InstanceObject = instanceObject;
     m_Reflector      = reflector;
 }
Exemplo n.º 2
0
 /// <summary>
 /// 指定された<see cref="BindingReflector"/>を使用して<see cref="AccessReflector"/>を生成して返します
 /// </summary>
 /// <param name="reflector">バインディングオブジェクト</param>
 /// <returns></returns>
 public AccessReflector Bind(BindingReflector reflector)
 {
     return(new BindingReflector(reflector.Flags, Type, reflector.InstanceObject).GenerateAccessReflector());
 }
 /// <summary>
 /// 現在のインスタンスに<see cref="BindingFlags.Static"/>が付与されている場合は解除し、
 /// 指定されたオブジェクトを関連づけて<see cref="BindingFlags.Instance"/>を付与した新しい<see cref="AccessReflector"/>を返します
 /// </summary>
 /// <param name="instanceObject">関連づけるオブジェクト</param>
 /// <returns></returns>
 public AccessReflector ToInstance(object instanceObject)
 {
     m_Reflector = m_Reflector.ToInstance(instanceObject);
     return(new BindingReflector(m_Reflector.Flags, m_Type, m_Reflector.InstanceObject).GenerateAccessReflector());
 }