Qbs Manual | Scanner Item

Qbs 1.9.0

Rule Item ◦ SubProject Item

# Scanner Item

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 XmlDomDocument(input.filePath);
            dependencies = [];
            // retrieve <file> entries from the XML document
            return dependencies;
          }
        }
      }

## Scanner Properties

Property | Type | Default | Description
--- | --- | --- | ---
condition | bool | true | If true, the scanner is enabled, otherwise it does nothing.
inputs | string list | undefined | File tags the input artifacts must match.
recursive | bool | false | Determines whether to scan the returned dependencies using the same scanner.
searchPaths | script | undefined | Script that returns paths to look for dependencies. The code in this script is treated as a function with the signature `function(project, product, input)`.
scan | script | undefined | Script that reads the input artifact and returns string list with dependencies. The code in this script is treated as a function with the signature `function(project, product, input)`.

Rule Item ◦ SubProject Item