Ninja
Public Types | Public Member Functions | Static Public Member Functions | Private Attributes | Friends | List of all members
Rule Struct Reference

An invokable build command and associated metadata (description, etc.). More...

#include <graph.h>

Public Types

typedef map< string, EvalStringBindings
 

Public Member Functions

void AddBinding (const string &key, const EvalString &val)
 
const EvalStringGetBinding (const string &key) const
 
const string & name () const
 
 Rule (const string &name)
 

Static Public Member Functions

static bool IsReservedBinding (const string &var)
 

Private Attributes

map< string, EvalStringbindings_
 
string name_
 

Friends

struct ManifestParser
 

Detailed Description

An invokable build command and associated metadata (description, etc.).

Definition at line 116 of file graph.h.

Member Typedef Documentation

typedef map<string, EvalString> Rule::Bindings

Definition at line 121 of file graph.h.

Constructor & Destructor Documentation

Rule::Rule ( const string &  name)
inlineexplicit

Definition at line 117 of file graph.h.

Member Function Documentation

void Rule::AddBinding ( const string &  key,
const EvalString val 
)

Definition at line 36 of file graph.cc.

References bindings_.

Referenced by ManifestParser::ParseRule().

const EvalString * Rule::GetBinding ( const string &  key) const

Definition at line 40 of file graph.cc.

References bindings_.

Referenced by EdgeEnv::LookupVariable().

bool Rule::IsReservedBinding ( const string &  var)
static

Definition at line 48 of file graph.cc.

Referenced by ManifestParser::ParseRule().

const string& Rule::name ( ) const
inline

Friends And Related Function Documentation

friend struct ManifestParser
friend

Definition at line 130 of file graph.h.

Member Data Documentation

map<string, EvalString> Rule::bindings_
private

Definition at line 133 of file graph.h.

Referenced by AddBinding(), GetBinding(), and ManifestParser::ParseRule().

string Rule::name_
private

Definition at line 132 of file graph.h.


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