BIND006: indirect-tag-reference-mismatch
Indirect tag binding placeholders and references differ
| Code | BIND006 |
| Name | indirect-tag-reference-mismatch |
| Category | Bindings and expressions (BIND) |
| Default severity | error |
| Enabled by default | yes |
| Fix available | no |
| ign-lint equivalent | none |
What it does
Section titled “What it does”In a tag binding in indirect mode, compares the {name} placeholders of
the tag path with the keys of references. Reports placeholders without a
reference and references that no placeholder uses.
Why is this bad?
Section titled “Why is this bad?”A placeholder without a reference is never replaced, so the binding
subscribes to a tag path that literally contains {name} and never gets a
good value. A reference without a placeholder is dead configuration,
usually left behind after the path was edited.
Example
Section titled “Example”{"type": "tag", "config": {"mode": "indirect", "tagPath": "[default]Line{line}/Motor{motor}/Speed", "references": {"line": "{view.params.line}"}}}Use instead:
{"type": "tag", "config": {"mode": "indirect", "tagPath": "[default]Line{line}/Motor{motor}/Speed", "references": {"line": "{view.params.line}", "motor": "{view.params.motor}"}}}Generated from the rule metadata by iglint generate-docs; iglint rule BIND006 prints the same page in the terminal. Source: docs/rules/BIND006.md.