ede-project-autoload

ede-project-autoload is an object constructor function in `auto.el'.
Creates an object of class ede-project-autoload.
Create a new object with name NAME of class type ede-project-autoload

Class description:
ede-project-autoload is a class in `auto.el'.

Class representing minimal knowledge set to run preliminary EDE functions.
When more advanced functionality is needed from a project type, that projects
type is required and the load function used.

Instance Allocated Slots:

Slot: name
Name of this project type

Slot: file
The lisp file belonging to this class.

Slot: proj-file
Name of a project file of this type.

Slot: root-only default = t
Non-nil if project detection only finds proj-file @ project root.

Slot: proj-root-dirmatch type = (or null string ede-project-autoload-dirmatch) default = nil
To avoid loading a project, check if the directory matches this.
Specifying this matcher object will allow EDE to perform a complex
check without loading the project.

NOTE: If you use dirmatch, you may need to set :root-only to `nil'.
While it may be a root based project, all subdirs will happen to return
true for the dirmatch, so for scanning purposes, set it to `nil'.

Slot: proj-root type = function
A function symbol to call for the project root.
This function takes no arguments, and returns the current directories
root, if available. Leave blank to use the EDE directory walking
routine instead.

Slot: initializers default = nil
Initializers passed to the project object.
These are used so there can be multiple types of projects
associated with a single object class, based on the initializers used.

Slot: load-type
Fn symbol used to load this project file.

Slot: class-sym
Symbol representing the project class to use.

Slot: generic-p default = nil
Generic projects are added to the project list at the end.
The add routine will set this to non-nil so that future non-generic placement will
be successful.

Slot: new-p default = t
Non-nil if this is an option when a user creates a project.

Slot: safe-p default = t
Non-nil if the project load files are "safe".
An unsafe project is one that loads project variables via Emacs
Lisp code. A safe project is one that loads project variables by
scanning files without loading Lisp code from them.

Specialized Methods:

`ede-project-root-directory' :PRIMARY (this &optional file)


`ede-project-root' :PRIMARY (this)
If a project knows its root, return it here.
Allows for one-project-object-for-a-tree type systems.

`ede-auto-load-project' :PRIMARY (this dir)
Load in the project associated with THIS project autoload description.
THIS project description should be valid for DIR, where the project will
be loaded.

NOTE: Do not call this - it should only be called from `ede-load-project-file'.

`ede-auto-detect-in-dir' :PRIMARY (this dir)
Return non-nil if THIS project autoload is found in DIR.