Difference between revisions of "Developer's Guide"
From CVC4
(→Source tree layout) |
(→File and directory names) |
||
Line 20: | Line 20: | ||
==File and directory names== | ==File and directory names== | ||
+ | |||
+ | # Files should be all lowercase, with CamelCase classes in header files named camel_case.h (and their implementations in camel_case.cpp); | ||
+ | # File extensions .cpp and .h are generally preferred, with .ypp and .lpp for yacc and lex inputs---an exception is made for headers when autotools wants to output parser definitions as (e.g.) pl.hpp; | ||
==Source file layout== | ==Source file layout== |
Revision as of 03:17, 17 November 2009
Contents
Source tree layout
- config
- this directory holds m4 macro processor files and bits of the autotools build system
- contrib
- this directory includes maintainer scripts and other things that aren't *directly* part of CVC4
- doc
- documentation
- src
- core
- the core of CVC4: the expression package, the core engines, ...
- include
- most include files (some private include files are also in parser and sat)
- parser
- parsers for supported CVC4 input formats
- sat
- propositional parts of CVC4; these include imported minisat sources
- core
Coding guidelines
File and directory names
- Files should be all lowercase, with CamelCase classes in header files named camel_case.h (and their implementations in camel_case.cpp);
- File extensions .cpp and .h are generally preferred, with .ypp and .lpp for yacc and lex inputs---an exception is made for headers when autotools wants to output parser definitions as (e.g.) pl.hpp;
Source file layout
Class header files
Class implementation files
Imported sources
(make sure to add to update-copyright.pl exclusions list)