Scanner
Creates custom dependency scanners in modules. More...
- List of all members, including inherited members
- Scanner is part of List of All Items.
Properties
- condition : bool
- inputs : stringList
- recursive : bool
- scan : script
- searchPaths : script
Detailed Description
A Scanner item can appear inside a Module item, and allows to extract dependencies for artifacts from the artifacts' file contents. For example, this is what a scanner for "qrc" files might look like:
import qbs.Xml Module { Scanner { inputs: 'qrc' scan: { var xml = new Xml.DomDocument(input.filePath); dependencies = []; // retrieve <file> entries from the XML document return dependencies; } } }
Property Documentation
condition : bool |
If true
, the scanner is enabled, otherwise it does nothing.
Default: true
inputs : stringList |
A list of file tags the input artifacts must match.
Default: Undefined
recursive : bool |
Determines whether to scan the returned dependencies using the same scanner.
Default: false
scan : script |
A script that reads the input artifact and returns a string list with dependencies.
The code in this script is treated as a function with the signature function(project, product, input, filePath)
, where input
is the artifact at which the scan originated, and filePath
is the currently scanned file. For non-recursive scans, filePath
is always equal to input.filePath
.
Default: Undefined
searchPaths : script |
A script that returns the paths where to look for dependencies.
The code in this script is treated as a function with the signature function(project, product, input)
.
Default: Undefined