Patent ID: 8117589
Filing Date: 2012-02-14
Classification: G06F

Abstract:
1. A method of synchronizing documentation of generated program code with source code comprising: providing a specification for an application programming interface (API) using a mark-up language with a predefined grammar; designating a set of functions of the API in the specification; designating a set of operational descriptions corresponding to each function in the specification; designating a listing of parameters of each function in the specification; designating a description of each parameter of each function in the specification; designating an implementation status of each function in the specification; designating a set of error messages of each function in the specification; designating a tracing indication of each function in the specification; designating at least one relation between functions or parameters in the specification; inputting the specification into a source code generation tool to generate a plurality of artifacts; generating from the source code generation tool a Hypertext Markup Language (HTML) documentation describing each function and each parameter of each function of the API; generating from the source code generation tool a set of compilable source code header files including declarations of each of the API functions designated by the specification; generating from the source code generation tool a set of source code method stubs for API function implementation; generating from the source code generation tool a set of wrapper functions corresponding to at least a subset of the API functions, wherein a wrapper contains program code that provides support operations separate from operation implemented by each API function and wherein the wrapper includes a call to a corresponding API function; and running, on a processor, a compiler on generated source code sequentially after generating the source code to determine validity of the source code and synchronization of the source code with the specification.