Esempio n. 1
0
 public MixinCoderContext(ProxyClassCoder proxyCoder, int index, IMixinDescriptor mixin)
 {
     _proxyCoder = proxyCoder;
     _mixin      = mixin;
     _index      = index;
     _mixinCoder = mixin.CreateCoder();
 }
Esempio n. 2
0
 public SubjectCoderContext(ProxyCodeBuilder pcb, IMixinCoder mixinCoder, ISubjectDescriptor subject)
 {
     _pcb          = pcb;
     _subject      = subject;
     _subjectCoder = subject.CreateCoder(mixinCoder, pcb);
 }
Esempio n. 3
0
 public override ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb)
 {
     return(new InterceptorSubjectCoder(mc as IInterceptMixinCoder));
 }
 public override ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb)
 {
     return new MethodExistsProxyMetaSubjectCoder(pcb);
 }
Esempio n. 5
0
 public override ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb)
 {
     return(new SafeDirectProxySubjectCoder(mc as IRealSubjectMixinCoder, pcb.ProxyCoderContext.ProxyModule, Type));
 }
Esempio n. 6
0
 public override ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb)
 {
     return(new DirectProxySubjectCoder(mc as IRealSubjectMixinCoder));
 }
Esempio n. 7
0
 public override ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb)
 {
     return(new SafeNullProxySubjectCoder(pcb.ProxyCoderContext.ProxyModule));
 }
 public override ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb)
 {
     return(new ComputeMethodIndexResultSubjectCoder((ComputeMethodIndexMixinCoder)mc));
 }
 public override ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb)
 {
     return new SafeProxyMetaSubjectCoder(mc as IRealSubjectMixinCoder);
 }
Esempio n. 10
0
 public abstract ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb);
 public override ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb)
 {
     return(new DynamicPropertySourceSubjectCoder(mc as IDynamicPropertySourceMixinCoder, pcb.ProxyCoderContext.ModuleBuilder));
 }
Esempio n. 12
0
 public override ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb)
 {
     return(new PropertyStoreSubjectCoder(pcb));
 }
Esempio n. 13
0
 public override ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb)
 {
     return(new DuckProxySubjectCoder(mc as IRealSubjectMixinCoder, pcb.ProxyCoderContext.ProxyModule, this));
 }
 public override ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb)
 {
     return new SubjectMethodExistsForDuckProxySubjectCoder(pcb, _methodExistsSubjectType, _realSubjectType);
 }
Esempio n. 15
0
 public override ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb)
 {
     return(new MethodExistsProxyMetaSubjectCoder(pcb));
 }
 public override ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb)
 {
     return(new SubjectMethodExistsForDuckProxySubjectCoder(pcb, _methodExistsSubjectType, _realSubjectType));
 }
 public override ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb)
 {
     return new ComputeMethodIndexForSubjectCoder((ComputeMethodIndexMixinCoder)mc);
 }
Esempio n. 18
0
 public abstract ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb);
 public override ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb)
 {
     return new DynamicPropertySourceSubjectCoder(mc as IDynamicPropertySourceMixinCoder, pcb.ProxyCoderContext.ModuleBuilder);
 }
Esempio n. 20
0
 public override ISubjectCoder CreateCoder(IMixinCoder mc, IProxyCodeBuilder pcb)
 {
     return(new InterceptTargetSubjectCoder(mc as IRealSubjectMixinCoder, Type));
 }