interface ti.sdoarch.standards.pkg.IVersion |
![](../../../../Arrow_up.png) |
Standard package version number interface
This interface is part of the SDO Package Standard. Each conformant
package that supplies a version number contains a module named
Version that implements this interface. In other words,
[
more ... ]
interface IVersion {
module-wide constants & types
module-wide config parameters
module-wide functions
}
DETAILS
This interface is part of the SDO Package Standard. Each conformant
package that supplies a version number contains a module named
Version that implements this interface. In other words,
- the package's package.xdc file declares Version as one of it's
modules
- the package contains a spec for the Version module (named
Version.xdc) and a header generated from this spec (named
Version.h)
- the Version.xdc file may optionally be generated from the
ti/sdoarch/standards/pkg/Version.xdt template when the package's
build script runs.
This interface defines a set of values that are used to
- informally communicate the "degree" of change between successive
releases of a package,
- provide a "key" that enables the producer to unambigeously identify
the sources (and tools) used to produce the package, and
- enable consumers to easily communicate to producers the version(s)
of the package(s) they are using.
const IVersion.MAJOR |
![](../../../../Arrow_up.png) |
Major version number
DETAILS
This number should be changed when major changes in the package
occur. Examples include adding new modules, adding substantial new
features to the algorithm(s).
const IVersion.MINOR |
![](../../../../Arrow_up.png) |
Minor version number
DETAILS
This number should be changed when minor changes in the package
occur. Examples include minor changes to the existing APIs,
adding minor features to the algorithms(s) including expanding the
configuration options.
const IVersion.PATCH |
![](../../../../Arrow_up.png) |
Patch level
DETAILS
This number should be changed when bug fixes or performance
improvements are introduced. There should be no changes in the APIs
in this case.
const IVersion.WIDTH |
![](../../../../Arrow_up.png) |
Minimum width of print fields
DETAILS
When denoting version numbers using '.' to separate fields
there is a danger of confusing version "6.1" and version "6.10";
because, in decimal notation 6.1 == 6.10. To avoid
this confusion, it is common practice to adopt a fixed minimum field
width that's when printing version dimensions (other than MAJOR);
e.g., rather than printing "6.1", if WIDTH == 2 then the version would
be displayed as "6.01".
metaonly config IVersion.common$ // module-wide |
![](../../../../Arrow_up.png) |
Common module configuration parameters
DETAILS
All modules have this configuration parameter. Its name
contains the '$' character to ensure it does not conflict with
configuration parameters declared by the module. This allows
new configuration parameters to be added in the future without
any chance of breaking existing modules.
metaonly IVersion.getString() // module-wide |
![](../../../../Arrow_up.png) |
Returns a string representation of the version
metaonly function getString(separator);
DETAILS
This method return a string of the form:
MAJOR<sep>MINOR<sep>PATCH
where MAJOR, MINOR, and PATCH are
the values sepcified in this interface and <sep> is the (optional)
argument to this method. If separator is not supplied (or is
null), <sep> defaults to '.'.
generated on Fri, 16 Sep 2011 21:23:19 GMT