Fabrique

A build language for complex systems

 All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros Pages
fabrique::dag::DAG Class Referenceabstract

A directed acyclic graph of build actions. More...

#include <DAG.h>

Inheritance diagram for fabrique::dag::DAG:
fabrique::Printable

Public Types

typedef std::pair< std::string,
ValuePtr > 
BuildTarget
 

Public Member Functions

virtual const std::string & buildroot () const =0
 
virtual const std::string & srcroot () const =0
 
virtual const SharedPtrVec
< File > & 
files () const =0
 
virtual const SharedPtrVec
< Build > & 
builds () const =0
 
virtual const SharedPtrMap
< Rule > & 
rules () const =0
 
virtual const SharedPtrMap
< Value > & 
variables () const =0
 
virtual const SharedPtrMap
< Target > & 
targets () const =0
 
virtual const std::vector
< BuildTarget > & 
topLevelTargets () const =0
 A file's top-level targets, in order of original definition.
 
virtual void PrettyPrint (Bytestream &, size_t indent=0) const override
 Print a human-readable representation to an output stream and return that output stream.
 
- Public Member Functions inherited from fabrique::Printable
 Printable (const Printable &)
 
Printableoperator= (const Printable &)
 
virtual std::string str () const
 

Detailed Description

A directed acyclic graph of build actions.

Definition at line 55 of file DAG.h.


The documentation for this class was generated from the following files: