Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ EmitMemberMemberBinding()

void System.Linq.Expressions.Compiler.LambdaCompiler.EmitMemberMemberBinding ( MemberMemberBinding binding)
inlineprivate

Definition at line 1812 of file LambdaCompiler.cs.

1813 {
1815 if (binding.Member is PropertyInfo && memberType.IsValueType)
1816 {
1817 throw Error.CannotAutoInitializeValueTypeMemberThroughProperty(binding.Member);
1818 }
1819 if (memberType.IsValueType)
1820 {
1821 EmitMemberAddress(binding.Member, binding.Member.DeclaringType);
1822 }
1823 else
1824 {
1825 EmitMemberGet(binding.Member, binding.Member.DeclaringType);
1826 }
1828 }
void EmitMemberInit(MemberInitExpression init)
void EmitMemberAddress(MemberInfo member, Type objectType)
void EmitMemberGet(MemberInfo member, Type objectType)

References System.Linq.Expressions.Error.CannotAutoInitializeValueTypeMemberThroughProperty(), System.Linq.Expressions.Compiler.LambdaCompiler.EmitMemberAddress(), System.Linq.Expressions.Compiler.LambdaCompiler.EmitMemberGet(), System.Linq.Expressions.Compiler.LambdaCompiler.EmitMemberInit(), and System.Linq.Expressions.Compiler.LambdaCompiler.GetMemberType().

Referenced by System.Linq.Expressions.Compiler.LambdaCompiler.EmitBinding().