2 using System.Collections.Generic;
4 namespace Mono.Debugger.Soft
7 * Represents a value of a primitive type in the debuggee
9 public class PrimitiveValue : Value {
12 public PrimitiveValue (VirtualMachine vm, object value) : base (vm, 0) {
22 public override bool Equals (object obj) {
25 if (obj != null && obj is PrimitiveValue)
26 return value == (obj as PrimitiveValue).Value;
27 return base.Equals (obj);
30 public override int GetHashCode () {
31 return base.GetHashCode ();
34 public override string ToString () {
37 return "PrimitiveValue<" + (v != null ? v.ToString () : "(null)") + ">";
40 public Value InvokeMethod (ThreadMirror thread, MethodMirror method, IList<Value> arguments) {
41 return ObjectMirror.InvokeMethod (vm, thread, method, this, arguments, InvokeOptions.None);
44 public Value InvokeMethod (ThreadMirror thread, MethodMirror method, IList<Value> arguments, InvokeOptions options) {
45 return ObjectMirror.InvokeMethod (vm, thread, method, this, arguments, options);
48 public IAsyncResult BeginInvokeMethod (ThreadMirror thread, MethodMirror method, IList<Value> arguments, InvokeOptions options, AsyncCallback callback, object state) {
49 return ObjectMirror.BeginInvokeMethod (vm, thread, method, this, arguments, options, callback, state);
52 public Value EndInvokeMethod (IAsyncResult asyncResult) {
53 return ObjectMirror.EndInvokeMethodInternal (asyncResult);