Browse Source
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@824 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61shortcuts
11 changed files with 65 additions and 97 deletions
@ -1,58 +0,0 @@
@@ -1,58 +0,0 @@
|
||||
// <file>
|
||||
// <copyright see="prj:///doc/copyright.txt">2002-2005 AlphaSierraPapa</copyright>
|
||||
// <license see="prj:///doc/license.txt">GNU General Public License</license>
|
||||
// <owner name="David Srbecký" email="dsrbecky@gmail.com"/>
|
||||
// <version>$Revision$</version>
|
||||
// </file>
|
||||
|
||||
using System; |
||||
|
||||
using Debugger.Interop.CorDebug; |
||||
|
||||
namespace Debugger |
||||
{ |
||||
static class ValueFactory |
||||
{ |
||||
public static Value CreateValue(NDebugger debugger, ICorDebugValue corValue) |
||||
{ |
||||
CorElementType type = Value.GetCorType(corValue); |
||||
|
||||
if (Value.DereferenceUnbox(corValue) == null) |
||||
{ |
||||
return new NullValue(debugger, corValue); |
||||
} |
||||
|
||||
switch(type) |
||||
{ |
||||
case CorElementType.BOOLEAN: |
||||
case CorElementType.CHAR: |
||||
case CorElementType.I1: |
||||
case CorElementType.U1: |
||||
case CorElementType.I2: |
||||
case CorElementType.U2: |
||||
case CorElementType.I4: |
||||
case CorElementType.U4: |
||||
case CorElementType.I8: |
||||
case CorElementType.U8: |
||||
case CorElementType.R4: |
||||
case CorElementType.R8: |
||||
case CorElementType.I: |
||||
case CorElementType.U: |
||||
case CorElementType.STRING: |
||||
return new PrimitiveValue(debugger, corValue); |
||||
|
||||
case CorElementType.ARRAY: |
||||
case CorElementType.SZARRAY: // Short-cut for single dimension zero lower bound array
|
||||
return new ArrayValue(debugger, corValue); |
||||
|
||||
case CorElementType.VALUETYPE: |
||||
case CorElementType.CLASS: |
||||
case CorElementType.OBJECT: // Short-cut for Class "System.Object"
|
||||
return new ObjectValue(debugger, corValue); |
||||
|
||||
default: // Unknown type
|
||||
return new UnavailableValue(debugger, "Unknown value type"); |
||||
} |
||||
} |
||||
} |
||||
} |
@ -1,27 +0,0 @@
@@ -1,27 +0,0 @@
|
||||
// <file>
|
||||
// <copyright see="prj:///doc/copyright.txt">2002-2005 AlphaSierraPapa</copyright>
|
||||
// <license see="prj:///doc/license.txt">GNU General Public License</license>
|
||||
// <owner name="David Srbecký" email="dsrbecky@gmail.com"/>
|
||||
// <version>$Revision$</version>
|
||||
// </file>
|
||||
|
||||
using System; |
||||
|
||||
using Debugger.Interop.CorDebug; |
||||
|
||||
namespace Debugger |
||||
{ |
||||
public static class VariableFactory |
||||
{ |
||||
internal static Variable CreateVariable(NDebugger debugger, ICorDebugValue corValue, string name) |
||||
{ |
||||
Value val = ValueFactory.CreateValue(debugger, corValue); |
||||
return CreateVariable(val, name); |
||||
} |
||||
|
||||
public static Variable CreateVariable(Value val, string name) |
||||
{ |
||||
return new Variable(val.Debugger, val, name); |
||||
} |
||||
} |
||||
} |
Loading…
Reference in new issue