From 9516078f3b857deee4dd28cf0a8c8b10477fa281 Mon Sep 17 00:00:00 2001 From: Dave Abrahams Date: Sun, 12 Jan 2003 21:24:41 +0000 Subject: [PATCH] Add Vladimir's UML diagram [SVN r16878] --- new/targets.jam | 37 +++++++++++++++++++++++++++++++++++++ v2/build/targets.jam | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 74 insertions(+) diff --git a/new/targets.jam b/new/targets.jam index 02289b298..74a1a6c63 100644 --- a/new/targets.jam +++ b/new/targets.jam @@ -27,6 +27,43 @@ # There will be two classes derived from it, 'make-target', created by the # 'make' rule, and 'typed-target', created by rules such as 'exe' and 'dll'. +# +# +------------------------+ +# |abstract-target | +# +========================+ +# |name | +# |project | +# | | +# |generate(properties) = 0| +# +-----------+------------+ +# | +# ^ +# / \ +# +-+-+ +# | +# | +# +------------------------+------+------------------------------+ +# | | | +# | | | +# +----------+-----------+ +------+------+ +------+-------+ +# | project-target | | main-target | | basic-target | +# +======================+ 1 * +=============+ alternatives +==============+ +# | generate(properties) |o-----------+ generate |<>------------->| generate | +# | main-target | +-------------+ +------+-------+ +# | reference-properties | | +# +----------------------+ ^ +# / \ +# +-+-+ +# | +# | +# ...--+----------------+------------------+----------------+---+ +# | | | | +# | | | | +# ... ---+-----+ +------+-------+ +------+------+ +--------+-----+ +# | | typed-target | | make-target | | stage-target | +# . +==============+ +=============+ +==============+ +# . | construct | | construct | | construct | +# +--------------+ +-------------+ +--------------+ import sequence ; import class : class new ; diff --git a/v2/build/targets.jam b/v2/build/targets.jam index 02289b298..74a1a6c63 100644 --- a/v2/build/targets.jam +++ b/v2/build/targets.jam @@ -27,6 +27,43 @@ # There will be two classes derived from it, 'make-target', created by the # 'make' rule, and 'typed-target', created by rules such as 'exe' and 'dll'. +# +# +------------------------+ +# |abstract-target | +# +========================+ +# |name | +# |project | +# | | +# |generate(properties) = 0| +# +-----------+------------+ +# | +# ^ +# / \ +# +-+-+ +# | +# | +# +------------------------+------+------------------------------+ +# | | | +# | | | +# +----------+-----------+ +------+------+ +------+-------+ +# | project-target | | main-target | | basic-target | +# +======================+ 1 * +=============+ alternatives +==============+ +# | generate(properties) |o-----------+ generate |<>------------->| generate | +# | main-target | +-------------+ +------+-------+ +# | reference-properties | | +# +----------------------+ ^ +# / \ +# +-+-+ +# | +# | +# ...--+----------------+------------------+----------------+---+ +# | | | | +# | | | | +# ... ---+-----+ +------+-------+ +------+------+ +--------+-----+ +# | | typed-target | | make-target | | stage-target | +# . +==============+ +=============+ +==============+ +# . | construct | | construct | | construct | +# +--------------+ +-------------+ +--------------+ import sequence ; import class : class new ;