US2008066062A1PendingUtilityA1

System and method for performing code completion with an extensible compiler framework in an integrated development environment

Assignee: BEA SYSTEMS INCPriority: Jul 18, 2003Filed: Nov 12, 2007Published: Mar 13, 2008
Est. expiryJul 18, 2023(expired)· nominal 20-yr term from priority
G06F 8/33
49
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A system and method for code completion, comprising providing a representation of a first program in a first programming language, establishing a location in the first program, associating the location with a representation of the first program, obtaining code completion information relevant to the location in the first program based on the representation of the first program, and wherein the obtaining occurs at the behest of an extensible compiler framework.

Claims

exact text as granted — not AI-modified
1 . A system for code completion, comprising: 
 a component operable to provide a representation of a first program in a first programming language;    a component operable to establish a location in the first program;    a component operable to associate the location with a representation of the first program;    a component operable to obtain code completion information relevant to the location in the first program based on the representation of the first program; and    wherein the obtaining occurs at the behest of an extensible compiler frameworks;    wherein the extensible compiler framework can integrate and interact with compilers for different programming languages through a common interface; and    wherein the extensible compiler framework provides code completion services to clients through a client interface;    wherein the extensible compiler framework can map a method to a language model associated with the source code file at a specified location.    
     
     
         2 . The system of  claim 1 , wherein after a user enters an identifier name followed by a dot, code completion presents the user with a list of all possible valid names that could follow the dot.  
     
     
         3 . The system of  claim 1 , wherein after a user enters a method name, code completion presents the user with a template of arguments for a method, and if there is more than one method with the same name, code completion presents the programmer with a list of templates of arguments for all of the methods with the same name.  
     
     
         4 . The system of  claim 1 , wherein the client interface includes methods which accept arguments describing location within a source code file.  
     
     
         5 . The system of  claim 1 , wherein the specified location is mapped to a location in a language model's parse tree.  
     
     
         6 . The system of  claim 1 , wherein information in the parse tree is used in conjunction with information in a name space to generate a list of possible code completions.  
     
     
         7 . The system of  claim 6 , wherein a client provides code completion to a user by presenting a pop-up window with a list of possible code completions.  
     
     
         8 . The system of  claim 7 , wherein as the user enters more text, the list of possible code completions shrinks to include only those completions that are still valid.  
     
     
         9 . The system of  claim 7 , wherein if the user selects a code completion, then the client inserts the code completion into the source code.  
     
     
         10 . A system comprising: 
 means for providing a representation of a first program in a first programming language;    means for establishing a location in the first program;    means for associating the location with a representation of the first program;    means for obtaining code completion information relevant to the location in the first program based on the representation of the first program; and    wherein the obtaining occurs at the behest of an extensible compiler framework.    
     
     
         11 . A machine readable medium having instructions stored thereon that when executed by a processor cause a system to: 
 provide a representation of a first program in a first programming language;    establish a location in the first program;    associate the location with a representation of the first program;    obtain code completion information relevant to the location in the first program based on the representation of the first program; and    wherein the obtaining occurs at the behest of an extensible compiler framework;    wherein the extensible compiler framework can integrate and interact with compilers for different programming languages through a common interface; and    wherein the extensible compiler framework provides code completion services to clients through a client interface;    wherein the extensible compiler framework can map a method to a language model associated with the source code file at a specified location.    
     
     
         12 . The machine readable medium of  claim 11 , wherein after a user enters an identifier name followed by a dot, code completion presents the user with a list of all possible valid names that could follow the dot.  
     
     
         13 . The machine readable medium of  claim 11 , wherein after a user enters a method name, code completion presents the user with a template of arguments for a method, and if there is more than one method with the same name, code completion presents the programmer with a list of templates of arguments for all of the methods with the same name.  
     
     
         14 . The machine readable medium of  claim 11 , wherein the client interface includes methods which accept arguments describing location within a source code file.  
     
     
         15 . The machine readable medium of  claim 11 , wherein the specified location is mapped to a location in a language model's parse tree.  
     
     
         16 . The machine readable medium of  claim 15 , wherein information in the parse tree is used in conjunction with information in a name space to generate a list of possible code completions.  
     
     
         17 . The machine readable medium of  claim 16 , wherein a client provides code completion to a user by presenting a pop-up window with a list of possible code completions.  
     
     
         18 . The machine readable medium of  claim 17 , wherein as the user enters more text, the list of possible code completions shrinks to include only those completions that are still valid.  
     
     
         19 . The machine readable medium of  claim 17 , wherein if the user selects a code completion, then the client inserts the code completion into the source code.

Join the waitlist — get patent alerts

Track US2008066062A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.