← Back to Patent Explorer
US7650593B2 Expired / Lapsed US ⏱️ 0.0 years remaining

Proxy objects for display

Assignee: Microsoft Technology Licensing LLC
•
Filing: 2004-03-25
•
Granted: 2010-01-19
•
Expires: 2024-03-25
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system and method facilitating attributed debugging is provided that facilitates a developer of an object to determine what information a debugger displays. An expression evaluator is provided. A debuggee (e.g., process to be debugged) can include a display proxy attribute that identifies a display proxy type associated with an object. When a request to examine the object is received by the expression evaluator, the expression can create the display proxy associated with the object, examine the display proxy, and provide information associated with the display proxy in response to the request to examine the object.

Inventors

  • 👤 Anson Horton
  • 👤 Michael Montwill
  • 👤 Daigo Hamura

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-24 09:59
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/36; G06F11/3698; G06F9/00; G06F9/06; G06F9/44; G06F9/451

Claims Analysis

Total Claims: 28
Claim 1
Independent Claim 256 words
A computer-implemented attributed debugging system comprising: a processor; system memory; a debugger that facilitates debugging of a computer software application, the debugger obtaining from a computer user one or more attributes for attributed debugging, the attributes comprising keyword-like tags provided by the computer user which are configured to annotate various programming elements to indicate whether the computer user desires the elements to be displayed and, if so, how the computer user desires the elements to be displayed during debugging, the attributes including values of one or more properties of an object of the computer software application, the debugger being configured to allow the computer user to specify for each runtime object which object information is to be displayed and how that object information is to be displayed using attributes; an expression evaluator, associated with the debugger, that examines a display proxy in place of the object to determine debug information related to the object, the display proxy is implemented as a private nested class of the object, the display proxy is configured with specified values to expose a subset of the one or more properties of the object, the subset excludes implementation-specific properties of the object; and a variable display component that presents, to the computer user, those specified values associated with the subset of the one or more properties of the object exposed by the display proxy, wherein only those values specified for display by the computer user are displayed and wherein the specified values are displayed in the manner indicated by the computer user.
Claim 2
Dependent Claim 256 words
A computer-implemented attributed debugging system comprising: a processor; system memory; a debugger that facilitates debugging of a computer software application, the debugger obtaining from a computer user one or more attributes for attributed debugging, the attributes comprising keyword-like tags provided by the computer user which are configured to annotate various programming elements to indicate whether the computer user desires the elements to be displayed and, if so, how the computer user desires the elements to be displayed during debugging, the attributes including values of one or more properties of an object of the computer software application, the debugger being configured to allow the computer user to specify for each runtime object which object information is to be displayed and how that object information is to be displayed using attributes; an expression evaluator, associated with the debugger, that examines a display proxy in place of the object to determine debug information related to the object, the display proxy is implemented as a private nested class of the object, the display proxy is configured with specified values to expose a subset of the one or more properties of the object, the subset excludes implementation-specific properties of the object; and a variable display component that presents, to the computer user, those specified values associated with the subset of the one or more properties of the object exposed by the display proxy, wherein only those values specified for display by the computer user are displayed and wherein the specified values are displayed in the manner indicated by the computer user.
Claim 3
Dependent Claim 29 words
The system of claim 1 , the expression evaluator evaluates an expression associated with the object to determine the values, the expression is implemented in a particular programming language.
Claim 4
Dependent Claim 18 words
The system of claim 2 , the programming language comprising at least one of C#, J#or Visual Basic.Net.
Claim 5
Dependent Claim 24 words
The system of claim 2 , further comprising a plurality of expression evaluators, wherein each expression evaluator is associated with a different programming language.
Claim 6
Dependent Claim 22 words
The system of claim 1 , the object comprises a class that includes at least one of a property or a method.
Claim 7
Dependent Claim 25 words
The system of claim 1 , the expression evaluator creates an instance of the display proxy associated with the object of the computer software application.
Claim 8
Dependent Claim 18 words
The system of claim 1 , the display proxy has access to private implementation specifics of the object.
Claim 9
Dependent Claim 41 words
The system of claim 1 , further comprising an attribute cache directory that stores an attribute associated with the display proxy, the expression evaluator employs the stored attribute to determine the values of the one or more properties of the object.
Claim 10
Dependent Claim 20 words
The system of claim 1 , further comprising an editing component that facilitates modifying a value associated with the object.
Claim 11
Dependent Claim 35 words
The system of claim 1 , the variable display employs at least one attribute associated with the object that provides a format to display the determined values of one or more properties of the object.
Claim 12
Dependent Claim 13 words
The system of claim 10 , the attribute specifies the property is displayed.
Claim 13
Dependent Claim 18 words
The system of claim 11 , the attribute employs an enumeration to specify the format of the display.
Claim 14
Dependent Claim 24 words
The system of claim 12 , the enumeration includes one enumeration value that indicates the property should not be displayed to the computer user.
Claim 15
Dependent Claim 21 words
The system of claim 12 , the enumeration includes one enumeration value that indicates a hierarchical property is expanded by default.
Claim 16
Dependent Claim 22 words
The system of claim 12 , the enumeration includes one enumeration value that indicates a hierarchical property is not expanded by default.
Claim 17
Dependent Claim 29 words
The system of claim 12 , the enumeration includes one enumeration value that indicates a hierarchical property itself is not displayed and members of the hierarchical property are displayed.
Claim 18
Dependent Claim 15 words
The system of claim 10 , the attribute specifies what is displayed for a class.
Claim 19
Dependent Claim 28 words
The system of claim 17 , the attribute includes an argument that comprises a string that is displayed in a value column for an instance of the class.
Claim 20
Dependent Claim 16 words
The system of claim 17 , the argument is associated with a property of the class.
Claim 21
Independent Claim 280 words
A method facilitating attributed debugging comprising: receiving a request to examine details of one or more properties of an object in a computer software application being debugged; receiving from a computer user one or more specified values associated with display proxy attributes for attributed debugging, the display proxy attributes comprising keyword-like tags provided by the computer user which are configured to annotate various programming elements to indicate whether the computer user desires the elements to be displayed and, if so, how the computer user desires the elements to be displayed during debugging in the debugger, the display proxy attributes including values of one or more properties of an object of the computer software application, the debugger being configured to allow the computer user to specify for each runtime object which object information is to be displayed and how that object information is to be displayed using attributes; accessing the received display proxy attribute for the object, the display proxy is implemented as a private nested class of the object such that the display proxy within the definition of the object, the display proxy provides relevant properties regarding a state of the object and conceals properties related to implementation of the object; creating a display proxy for the object in accordance with the display proxy attribute; examining the display proxy in place of the object to determine debug information related to the object; presenting to the computer user the object associated with the display proxy, wherein only those objects with specified values associated with display proxy attributes specified for display by the computer user are displayed and wherein the specified objects are displayed in the manner indicated by the computer user.
Claim 22
Independent Claim 280 words
A method facilitating attributed debugging comprising: receiving a request to examine details of one or more properties of an object in a computer software application being debugged; receiving from a computer user one or more specified values associated with display proxy attributes for attributed debugging, the display proxy attributes comprising keyword-like tags provided by the computer user which are configured to annotate various programming elements to indicate whether the computer user desires the elements to be displayed and, if so, how the computer user desires the elements to be displayed during debugging in the debugger, the display proxy attributes including values of one or more properties of an object of the computer software application, the debugger being configured to allow the computer user to specify for each runtime object which object information is to be displayed and how that object information is to be displayed using attributes; accessing the received display proxy attribute for the object, the display proxy is implemented as a private nested class of the object such that the display proxy within the definition of the object, the display proxy provides relevant properties regarding a state of the object and conceals properties related to implementation of the object; creating a display proxy for the object in accordance with the display proxy attribute; examining the display proxy in place of the object to determine debug information related to the object; presenting to the computer user the object associated with the display proxy, wherein only those objects with specified values associated with display proxy attributes specified for display by the computer user are displayed and wherein the specified objects are displayed in the manner indicated by the computer user.
Claim 23
Dependent Claim 28 words
The method of claim 20 further comprising providing the debug information determined by the display proxy to computer user in response to the request to examine the object.
Claim 24
Dependent Claim 19 words
A computer readable medium having stored thereon computer executable instructions for carrying out the method of claim 20 .
Claim 25
Dependent Claim 336 words
An attributed debugging system comprising: processing means; memory means; means for receiving a request to debug an object in a computer software application; means for receiving from a computer user one or more specified values associated with display proxy attributes for attributed debugging, the display proxy attributes comprising keyword-like tags provided by the computer user which are configured to annotate various programming elements to indicate whether the computer user desires the elements to be displayed and, if so, how the computer user desires the elements to be displayed during debugging in the debugger, the display proxy attributes including values of one or more properties of an object of the computer software application, the debugger being configured to allow the computer user to specify for each runtime object which object information is to be displayed and how that object information is to be displayed using attributes; means for accessing the received display proxy attribute in association with the object, the display proxy is implemented as a private nested class of the object such that the display proxy within the definition of the object, the display proxy provides relevant properties regarding a state of the object and conceals properties related to implementation of the object; means for creating an instance of the display proxy; means for examining the display proxy in place of the object to determine debug information related to the object, means for examining the display proxy comprise means for obtaining values of the provided relevant properties; means for providing debug information in response to the request to debug the object, the debug information is based at least in part on the display proxy and includes at least the obtained values of the provided relevant properties; means for presenting to the computer user the object associated with the display proxy, wherein only those objects with specified values associated with display proxy attributes specified for display by the computer user are displayed and wherein the specified objects are displayed in the manner indicated by the computer user.
Claim 26
Dependent Claim 336 words
An attributed debugging system comprising: processing means; memory means; means for receiving a request to debug an object in a computer software application; means for receiving from a computer user one or more specified values associated with display proxy attributes for attributed debugging, the display proxy attributes comprising keyword-like tags provided by the computer user which are configured to annotate various programming elements to indicate whether the computer user desires the elements to be displayed and, if so, how the computer user desires the elements to be displayed during debugging in the debugger, the display proxy attributes including values of one or more properties of an object of the computer software application, the debugger being configured to allow the computer user to specify for each runtime object which object information is to be displayed and how that object information is to be displayed using attributes; means for accessing the received display proxy attribute in association with the object, the display proxy is implemented as a private nested class of the object such that the display proxy within the definition of the object, the display proxy provides relevant properties regarding a state of the object and conceals properties related to implementation of the object; means for creating an instance of the display proxy; means for examining the display proxy in place of the object to determine debug information related to the object, means for examining the display proxy comprise means for obtaining values of the provided relevant properties; means for providing debug information in response to the request to debug the object, the debug information is based at least in part on the display proxy and includes at least the obtained values of the provided relevant properties; means for presenting to the computer user the object associated with the display proxy, wherein only those objects with specified values associated with display proxy attributes specified for display by the computer user are displayed and wherein the specified objects are displayed in the manner indicated by the computer user.
Claim 27
Dependent Claim 348 words
A computer-implemented attributed debugging system, comprising: a processor; system memory; a debugger that facilitates debugging of a computer software application, the debugger obtaining from a computer user one or more attributes for attributed debugging, the attributes comprising keyword-like tags provided by the computer user which are configured to annotate various programming elements to indicate whether the computer user desires the elements to be displayed and, if so, how the computer user desires the elements to be displayed during debugging, the attributes including values of one or more properties of an object of the computer software application, the debugger being configured to allow the computer user to specify for each runtime object which object information is to be displayed and how that object information is to be displayed using attributes, wherein the attributes are configured to control the following based on the computer user's indication: which value is to be shown at the top-level for a given type whereby the need to expand the object for additional information is reduced; whether or not a field or property for a programming element should be shown or not shown; what the value should be shown for a field or property of the programming element; whether a type is to be shown fully expanded; and adding descriptive name or type information to the programming element; an expression evaluator, associated with the debugger, that examines a display proxy in place of the object to determine debug information related to the object, the display proxy is implemented as a private nested class of the object, the display proxy is configured with specifies values to expose a subset of the one or more properties of the object, the subset excludes implementation-specific properties of the object; and a variable display component that presents, to the computer user, those specified values associated with the subset of the one or more properties of the object exposed by the display proxy, wherein only those values specified for display by the computer user are displayed and wherein the specified values are displayed in the manner indicated by the computer user.
Claim 28
Dependent Claim 348 words
A computer-implemented attributed debugging system, comprising: a processor; system memory; a debugger that facilitates debugging of a computer software application, the debugger obtaining from a computer user one or more attributes for attributed debugging, the attributes comprising keyword-like tags provided by the computer user which are configured to annotate various programming elements to indicate whether the computer user desires the elements to be displayed and, if so, how the computer user desires the elements to be displayed during debugging, the attributes including values of one or more properties of an object of the computer software application, the debugger being configured to allow the computer user to specify for each runtime object which object information is to be displayed and how that object information is to be displayed using attributes, wherein the attributes are configured to control the following based on the computer user's indication: which value is to be shown at the top-level for a given type whereby the need to expand the object for additional information is reduced; whether or not a field or property for a programming element should be shown or not shown; what the value should be shown for a field or property of the programming element; whether a type is to be shown fully expanded; and adding descriptive name or type information to the programming element; an expression evaluator, associated with the debugger, that examines a display proxy in place of the object to determine debug information related to the object, the display proxy is implemented as a private nested class of the object, the display proxy is configured with specifies values to expose a subset of the one or more properties of the object, the subset excludes implementation-specific properties of the object; and a variable display component that presents, to the computer user, those specified values associated with the subset of the one or more properties of the object exposed by the display proxy, wherein only those values specified for display by the computer user are displayed and wherein the specified values are displayed in the manner indicated by the computer user.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2013-01-18 2013-07-20 2014-01-19 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2017-01-18 2017-07-20 2018-01-19 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2021-01-18 2021-07-20 2022-01-19 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag