Next: , Previous: , Up: Software Evolution Library Index   [Contents][Index]


A.47 SOFTWARE-EVOLUTION-LIBRARY/SOFTWARE/PROJECT

Generic Function: collect-other-files [sel/sw/project] project

Find parseable files in project that were not included in ‘evolve-files’. Assumes ‘evolve-files’ has been initialized. Only applies to non-symlink text files that don’t end in "~" and are not ignored by ‘ignore-other-paths’, or ‘only-other-paths’.

Method: around collect-other-files [sel/sw/project] (project javascript-project)

Wrapper to represent JSON files as JSON software objects instead of simple text software objects.

Generic Function: ignored-other-path-p [sel/sw/project] software path

Check if path is an ignored other path in software.

Class: include-paths-mixin [sel/sw/project]

Class precedence list: include-paths-mixin, standard-object, slot-object, t

Slots:

Mixin for finding include files. This can be combined with a project class or a class for software objects for files of specific languages, such as C or C++.

Class: project [sel/sw/project]

Class precedence list: project, software, oid-object, standard-object, slot-object, t

Slots:

A project is composed of multiple component software objects. e.g., a multi-file C software project may include multiple clang software objects in it’s ‘evolve-files’.

Variable: *build-dir* [sel/sw/project]

Directory in which to build projects with ‘phenome’. When non-nil ‘phenome’ builds projects in this directory instead of the ‘project-dir’ field of the software object. Calling ‘phenome’ on software objects sharing the same project-dir in multiple threads will lead to conflicts. This may be avoided by giving each thread its own build directory. To do this set *build-dir* to a different location in each thread and then initialize *build-dir* in each thread by calling ‘{to-file _ *BUILD_DIR*}’ against a base software object (e.g., the original program).

Generic Function: collect-evolve-files [sel/sw/project] project

Create the evolve files for project.

Method: before collect-evolve-files [sel/sw/project] (obj clang-project)

Ensure clang-project has a compilation-database populated.

Generic Function: directories-of-header-files [sel/sw/project] project &key types

Return a list of the pathnames of directories that contain header files. types is a list of strings of the types of files to loeok for (defaults to ("h")). Names are sorted into shortlex order by namestring.

Generic Function: find-include-files [sel/sw/project] project file include-name

Locate the include file(s) for inclusion of include-name.

Generic Function: ignored-evolve-path-p [sel/sw/project] software path

Check if path is an ignored evolve path in software.

Generic Function: pick-file [sel/sw/project] obj

Randomly pick one evolve file. Return its index in the alist.


Next: , Previous: , Up: Software Evolution Library Index   [Contents][Index]