File tree Expand file tree Collapse file tree 2 files changed +9
-22
lines changed
src/Castle.Core/DynamicProxy/Generators Expand file tree Collapse file tree 2 files changed +9
-22
lines changed Original file line number Diff line number Diff line change 1616
1717namespace Castle . DynamicProxy . Generators . Emitters . SimpleAST
1818{
19- using System ;
2019 using System . Diagnostics ;
2120 using System . Reflection . Emit ;
2221
23-
24- [ DebuggerDisplay ( "&{localReference}" ) ]
25- internal class ByRefReference : Reference
22+ [ DebuggerDisplay ( "&{reference}" ) ]
23+ internal class AddressOfExpression : IExpression
2624 {
27- private readonly LocalReference localReference ;
28-
29- public ByRefReference ( LocalReference localReference )
30- : base ( localReference . Type )
31- {
32- this . localReference = localReference ;
33- }
34-
35- public override void EmitAddress ( ILGenerator gen )
36- {
37- localReference . EmitAddress ( gen ) ;
38- }
25+ private readonly Reference reference ;
3926
40- public override void Emit ( ILGenerator gen )
27+ public AddressOfExpression ( Reference reference )
4128 {
42- localReference . EmitAddress ( gen ) ;
29+ this . reference = reference ;
4330 }
4431
45- public override void EmitStore ( IExpression value , ILGenerator gen )
32+ public void Emit ( ILGenerator gen )
4633 {
47- throw new NotImplementedException ( ) ;
34+ reference . EmitAddress ( gen ) ;
4835 }
4936 }
5037}
Original file line number Diff line number Diff line change @@ -149,8 +149,8 @@ protected virtual void ImplementInvokeMethodOnTarget(AbstractTypeEmitter invocat
149149 }
150150
151151 invokeMethodOnTarget . CodeBuilder . AddStatement ( new AssignStatement ( localReference , localValue ) ) ;
152- var byRefReference = new ByRefReference ( localReference ) ;
153- args [ i ] = byRefReference ;
152+ var localByRef = new AddressOfExpression ( localReference ) ;
153+ args [ i ] = localByRef ;
154154 byRefArguments [ i ] = localReference ;
155155 }
156156 else
You can’t perform that action at this time.
0 commit comments