diff --git a/v2/doc/src/extending.xml b/v2/doc/src/extending.xml index 9c4fe4b9b..992f47b69 100644 --- a/v2/doc/src/extending.xml +++ b/v2/doc/src/extending.xml @@ -83,11 +83,13 @@ The generate method takes the build properties - (as an instance of the property-set class) and returns + (as an instance of the + property-set class) and returns a list containing: As front element—Usage-requirements from this invocation - (an instance of property-set) + (an instance of + property-set) As subsequent elements—created concrete targets ( instances of the virtual-target class.) @@ -158,8 +160,8 @@ subclass is file-target. A file target is associated with an action that creates it— an instance of the action class. The action, in turn, hold a list of source targets. It also holds the - property-set instance with the build properties that - should be used for the action. + property-set + instance with the build properties that should be used for the action. Here's an example of creating a target from another target, source diff --git a/v2/doc/src/property-set.xml b/v2/doc/src/property-set.xml new file mode 100644 index 000000000..a5b5b8c7f --- /dev/null +++ b/v2/doc/src/property-set.xml @@ -0,0 +1,128 @@ + + + +
+ + Class property-set + + property-set + + + Class for storing a set of properties. + + +class property-set { + rule raw ( ) + rule str ( ) + rule propagated ( ) + rule add ( ps ) + rule add-raw ( properties * ) + rule refine ( ps ) + rule get ( feature ) +} + + + + There is 1<->1 correspondence between identity and value. No two instances + of the class are equal. To maintain this property, the 'property-set.create' + rule should be used to create new instances. Instances are immutable. + + + + + + + raw + Property Set Method + + rule raw ( ) + Returns a Jam list of the stored properties. + + + + + str + Property Set Method + + rule str ( ) + Returns the string repesentation of the stored properties. + + + + + propagated + Property Set Method + + rule propagated ( ) + + Returns a property-set + containing all the propagated + properties in this property-set. + + + + + + add + Property Set Method + + rule add ( ps ) + + Returns a new + property-set containing the union of the properties + in this + property-set and in ps. + + + If ps contains non-free properties + that should override the values in this object, use + + refine instead. + + + + + + + + add-raw + Property Set Method + + rule add-raw ( properties * ) + + Link + add, except that it takes a list of properties + instead of a + property-set. + + + + + + refine + Property Set Method + + rule refine ( ps ) + + Refines properties by overriding any non-free and non-conditional + properties for which a different value is specified in + ps. Returns the resulting + property-set. + + + + + + get + Property Set Method + + rule get ( feature ) + + Returns all the values of feature. + + + + + +
diff --git a/v2/doc/src/reference.xml b/v2/doc/src/reference.xml index b0e30ccd3..c07b28377 100644 --- a/v2/doc/src/reference.xml +++ b/v2/doc/src/reference.xml @@ -1959,6 +1959,7 @@ import path : native make : native-path make-path ; +