public override void VisitDeleteMember(BoundDeleteMember node) { var getVariable = node.Expression as BoundGetVariable; if (getVariable != null) { var local = getVariable.Variable as BoundLocal; if (local != null) { var type = SpeculatedType.Object; if (node.Index.ValueType == BoundValueType.Number) type = SpeculatedType.Array; _scope.SpeculateType( local, type, false ); } } base.VisitDeleteMember(node); }
public virtual void VisitDeleteMember(BoundDeleteMember node) { DefaultVisit(node); }
private BoundValueType EmitDeleteMember(BoundDeleteMember node) { return EmitOperationCall( Operation.Delete, node.Expression, node.Index ); }