bolt/rules/laws/law.bend fails
raw source on the hub · import 0x729eecea86ea5a2cdba3a2856a313bca/bolt/rules/laws/law.bend as Law
rule law (project-wide): in a project that states laws (a directory with a
LAWS.bend), every pure def is named by some law. A def a law never mentions
has no stated property: it is the coverage gap. A type is covered once any
law reaches its module (a law about an instance names the accessors, never
the service type). Out of scope: helpers (dotted names), main, tests, the
law files themselves, and a module that touches IO (a law cannot state it).
The rule reads each file's digest (bolt/rules/digest.bend), never the parsed
source: its phases use the list three times, and a + reuse copies it.
5 imports
import Base import ../../../lazy/lazy.bend as Lazy import ../../finding.bend as F import ../../../syntax/outline.bend as Outline import ../digest.bend as Digest
The reader could not load this file (at 0x729eecea86ea5a2cdba3a2856a313bca/bolt/config.bend:31). What bend.ts says:
Error:
- expected : a fresh name (duplicate declaration: Set)
- observed : 'Set'
Location:
30 | # a name (a group's or a rule's) at a level
31>| type Set is Data:
| ^^^
32 | Set{name: String, level: Level}