/[jscoverage]/trunk/instrument-js.h
ViewVC logotype

Diff of /trunk/instrument-js.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 174 by siliconforks, Sat Sep 20 23:27:14 2008 UTC revision 399 by siliconforks, Tue Dec 9 03:37:47 2008 UTC
# Line 20  Line 20 
20  #ifndef INSTRUMENT_JS_H_  #ifndef INSTRUMENT_JS_H_
21  #define INSTRUMENT_JS_H_  #define INSTRUMENT_JS_H_
22    
23    /* ISO C99 specifies that C++ code must define this to get UINT16_MAX etc. */
24    #define __STDC_LIMIT_MACROS
25    #include <stdint.h>
26    
27  #include "stream.h"  #include "stream.h"
28  #include "util.h"  #include "util.h"
29    
30    #ifdef __cplusplus
31    extern "C" {
32    #endif
33    
34  enum FileType {  enum FileType {
35    FILE_TYPE_JS,    FILE_TYPE_JS,
36    FILE_TYPE_HTML,    FILE_TYPE_HTML,
37    FILE_TYPE_OTHER    FILE_TYPE_OTHER
38  };  };
39    
40    extern bool jscoverage_mozilla;
41    
42    void jscoverage_set_js_version(const char * version);
43    
44  void jscoverage_init(void);  void jscoverage_init(void);
45    
46  void jscoverage_cleanup(void);  void jscoverage_cleanup(void);
47    
48  void jscoverage_instrument_js(const char * id, const char * encoding, Stream * input, Stream * output);  void jscoverage_instrument_js(const char * id, const uint16_t * characters, size_t num_characters, Stream * output);
49    
50  void jscoverage_copy_resources(const char * destination_directory);  void jscoverage_copy_resources(const char * destination_directory);
51    
# Line 42  Line 54 
54  typedef struct FileCoverage {  typedef struct FileCoverage {
55    char * id;    char * id;
56    
57    int * lines;    int * coverage_lines;
58    uint32_t num_lines;    char ** source_lines;
59    
60    char * source;    /* SpiderMonkey uses uint32 for array lengths */
61      uint32_t num_coverage_lines;
62      uint32_t num_source_lines;
63  } FileCoverage;  } FileCoverage;
64    
65  Coverage * Coverage_new(void);  Coverage * Coverage_new(void);
# Line 58  Line 72 
72    
73  int jscoverage_parse_json(Coverage * coverage, const uint8_t * data, size_t length) __attribute__((warn_unused_result));  int jscoverage_parse_json(Coverage * coverage, const uint8_t * data, size_t length) __attribute__((warn_unused_result));
74    
75    void jscoverage_write_source(const char * id, const uint16_t * characters, size_t num_characters, Stream * output);
76    
77    #ifdef __cplusplus
78    }
79  #endif  #endif
80    
81    #endif /* INSTRUMENT_JS_H_ */

Legend:
Removed from v.174  
changed lines
  Added in v.399

  ViewVC Help
Powered by ViewVC 1.1.24