5 namespace AST.Operations {
13 internal class CheckMakeAnUnboxOperation : AstOperation {
17 public CheckMakeAnUnboxOperation() {
18 this.methodType = null;
22 this.CheckActualMethodCalled(b);
23 return this.ReturnValue(b);
31 public override object Exec(
Expression node,
object arg) {
32 return this.ReturnValue(node);
35 private bool ReturnValue(
Expression expression) {
36 if (this.methodType != null)
37 return !(this.methodType.Return.IsValueType());
42 return (field.FieldTypeExpression is TypeSystem.TypeVariable);
50 if (this.methodType == null) {
52 if (typeVariable != null)
Abstract class encapsulate a programming language expression.
Represents a generic type expression
Representa a method type.
Encapsulates a invocation expression to base class.