Both PairChecker and AttributeContainerChecker factory functions
modified to return more generic AttributeCheckers similar to other
attribute types. By removing the templated return type, the internal
templated classes become necessary to define checkers for each
templated type. This follows the pattern in PointerChecker and
ObjectContainerChecker.
The pair-value-test-suite and attribute-container-test-suite were
amended to account for the changes in the checker factories. All
tests continue to pass.
Plenty of documentation was added to PairValue and AttributeContainerValue
and I also removed some dead code.
* Change version tag and ClosestTag values to be ns-3.xx
* Fix string values to have the proper format
* Allow check-version to proceed even if git task is not present
* Remove git package requirement from Docker containers
* Create git_ns3_version_info task only when HAVE_NS3_REPO is defined
* Change tag glob from ns-3* to ns-3.[0-9]*
* Use version tag to make output consistent with waf --check-version
* Add a git tag to the tip of the branch before building
* Install git package before building
* Update ubuntu and fedora builds to install git package
This amends the script to return a tailored exit status:
With filter-in options (-m, -f) the exit status records if any warnings
were found in the listed module or files.
Without any filter-in options the exit status records whether *any*
Doxygen warnings were found.
Changed the default creation directory from src/ to contrib/
Moved create-modules.py from src/ to utils/
Added two new optional command line arguments: --project and --use-src-dir
--project specifies a directory name or path under which the new modules
will be created.
--use-src-dir directs the script to create new modules in the src
directory instead of contrib. This argument cannot be combined
with --project.
Updated contrib/wscript to search for modules at
arbitrary depths instead of just the child directories under
contrib.
Assume the following directory structure:
contrib/
project1/
module1/
wscript
module2/
wscript
project2/
sub_project1/
module3/
wscript
module4/
wscript
sub_project2/
module5/
wscript
module6/
wscript
data/
module7/
wscript
waf configure will discover the following modules under contrib:
project1/module1
project1/module2
project2/sub_project1/module3
project2/sub_project1/module4
project2/sub_project2/module5
project2/sub_project2/module6
module7
Refactor to clarify the core algorithms and isolate the
forward/reverse differences to one section.
This also lets the insertion order to be set by Attribute.
Benchmarking this appears to be marginally faster than
Alexander Krotov's original version. It's not clear why;
should be marginally slower.