public override void OnReferenceExpression(ReferenceExpression node) { if (TypeInference.IsTypeLiteral(node)) { TypeofExpression typeofExpression = new TypeofExpression(LexicalInfo.Empty); TypeReference typeReference = typeofExpression.Type = TypeReference.Lift(node); this.ReplaceCurrentNode(typeofExpression); } }
public Expression CreateTypeofExpression(IType type) { TypeofExpression expression = new TypeofExpression(); expression.Type = CreateTypeReference(type); expression.ExpressionType = _tss.TypeType; expression.Entity = type; return(expression); }
override public void OnTypeofExpression(TypeofExpression node) { Write("typeof("); Visit(node.Type); Write(")"); }
public override void OnTypeofExpression(TypeofExpression node) { throw new NotImplementedException(); }
public override void Visit(TypeofExpression node) { Visit((UnaryExpression)node); }
public override void Visit(TypeofExpression node) { unfinishedClone = new TypeofExpression(GetCloneOf(node.Expression)); base.Visit(node); }
override public void LeaveTypeofExpression(TypeofExpression node) { OnExpression(node); }
public override void visit_typeof_expression(TypeofExpression expr) { expr.accept_children(this); }
public override void OnTypeofExpression(TypeofExpression node) { _expression = new CodeTypeOfExpression(ConvTypeRef(node.Type)); }
public override void OnTypeofExpression(TypeofExpression node) { MakeResult(projectContent.SystemTypes.Type); }
public override void Visit(TypeofExpression node) { UpdateType(node, TypeCalculator.GetType(node)); }
public override void OnTypeofExpression(TypeofExpression node) { base.OnTypeofExpression(node); Check(node); }
public override void Visit(TypeofExpression node) { AssignToImplicitReturn(node); }
protected virtual Expression VisitTypeof(TypeofExpression node) { Visit(node.Expression); return(node); }
/// <summary> /// Visit operation called for typeof expressions. /// /// <param name="expr">a typeof expression</param> /// </summary> public virtual void visit_typeof_expression(TypeofExpression expr) { }