{
  "definitions": [
    {
      "callable": true,
      "callees": [
        {
          "file": "configuration/strings/code.strings.ts",
          "name": "duplicateDetail",
          "source": {
            "href": "https://banes-lab.com/anatomy/patterns#file-patterns-configuration-strings-code-strings-ts",
            "json": "https://banes-lab.com/json/source/patterns/configuration/strings/code.strings.ts",
            "label": "configuration/strings/code.strings.ts",
            "markdown": "https://banes-lab.com/source/patterns/configuration/strings/code.strings.ts.md",
            "ref": "anatomy:file-patterns-configuration-strings-code-strings-ts"
          }
        }
      ],
      "callers": [
        {
          "file": "core/analyzers/definition.analyzer.ts",
          "name": "duplicateFindings",
          "source": {
            "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-analyzers-definition-analyzer-ts",
            "json": "https://banes-lab.com/json/source/patterns/core/analyzers/definition.analyzer.ts",
            "label": "core/analyzers/definition.analyzer.ts",
            "markdown": "https://banes-lab.com/source/patterns/core/analyzers/definition.analyzer.ts.md",
            "ref": "anatomy:file-patterns-core-analyzers-definition-analyzer-ts"
          }
        }
      ],
      "exported": false,
      "flow": "relay",
      "kind": "lexical_declaration",
      "line": 105,
      "name": "duplicateGroups",
      "signature": "const duplicateGroups = function duplicateGroups(name: string, defs: readonly CodeSymbol[]): CodeFinding[] {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/analyzers/definition.analyzer.ts",
          "name": "duplicateGroups",
          "source": {
            "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-analyzers-definition-analyzer-ts",
            "json": "https://banes-lab.com/json/source/patterns/core/analyzers/definition.analyzer.ts",
            "label": "core/analyzers/definition.analyzer.ts",
            "markdown": "https://banes-lab.com/source/patterns/core/analyzers/definition.analyzer.ts.md",
            "ref": "anatomy:file-patterns-core-analyzers-definition-analyzer-ts"
          }
        }
      ],
      "callers": [
        {
          "file": "core/coordinators/code.coordinator.ts",
          "name": "diagnose",
          "source": {
            "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-coordinators-code-coordinator-ts",
            "json": "https://banes-lab.com/json/source/patterns/core/coordinators/code.coordinator.ts",
            "label": "core/coordinators/code.coordinator.ts",
            "markdown": "https://banes-lab.com/source/patterns/core/coordinators/code.coordinator.ts.md",
            "ref": "anatomy:file-patterns-core-coordinators-code-coordinator-ts"
          }
        }
      ],
      "exported": true,
      "flow": "relay",
      "kind": "lexical_declaration",
      "line": 135,
      "name": "duplicateFindings",
      "signature": "export const duplicateFindings = function duplicateFindings(symbols: readonly CodeSymbol[]): CodeFinding[] {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [
        {
          "file": "core/analyzers/definition.analyzer.ts",
          "name": "isExported",
          "source": {
            "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-analyzers-definition-analyzer-ts",
            "json": "https://banes-lab.com/json/source/patterns/core/analyzers/definition.analyzer.ts",
            "label": "core/analyzers/definition.analyzer.ts",
            "markdown": "https://banes-lab.com/source/patterns/core/analyzers/definition.analyzer.ts.md",
            "ref": "anatomy:file-patterns-core-analyzers-definition-analyzer-ts"
          }
        }
      ],
      "exported": false,
      "flow": "leaf",
      "kind": "lexical_declaration",
      "line": 24,
      "name": "startsUpper",
      "signature": "const startsUpper = function startsUpper(name: string): boolean {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [
        {
          "file": "core/analyzers/definition.analyzer.ts",
          "name": "isNamedDefinition",
          "source": {
            "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-analyzers-definition-analyzer-ts",
            "json": "https://banes-lab.com/json/source/patterns/core/analyzers/definition.analyzer.ts",
            "label": "core/analyzers/definition.analyzer.ts",
            "markdown": "https://banes-lab.com/source/patterns/core/analyzers/definition.analyzer.ts.md",
            "ref": "anatomy:file-patterns-core-analyzers-definition-analyzer-ts"
          }
        }
      ],
      "exported": false,
      "flow": "leaf",
      "kind": "lexical_declaration",
      "line": 33,
      "name": "isCleanName",
      "signature": "const isCleanName = function isCleanName(name: string): boolean {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [
        {
          "file": "core/analyzers/definition.analyzer.ts",
          "name": "isNamedDefinition",
          "source": {
            "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-analyzers-definition-analyzer-ts",
            "json": "https://banes-lab.com/json/source/patterns/core/analyzers/definition.analyzer.ts",
            "label": "core/analyzers/definition.analyzer.ts",
            "markdown": "https://banes-lab.com/source/patterns/core/analyzers/definition.analyzer.ts.md",
            "ref": "anatomy:file-patterns-core-analyzers-definition-analyzer-ts"
          }
        }
      ],
      "exported": false,
      "flow": "leaf",
      "kind": "lexical_declaration",
      "line": 42,
      "name": "isModuleDefinition",
      "signature": "const isModuleDefinition = function isModuleDefinition(symbol: CodeSymbol): boolean {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [
        {
          "file": "core/coordinators/code.coordinator.ts",
          "name": "diagnose",
          "source": {
            "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-coordinators-code-coordinator-ts",
            "json": "https://banes-lab.com/json/source/patterns/core/coordinators/code.coordinator.ts",
            "label": "core/coordinators/code.coordinator.ts",
            "markdown": "https://banes-lab.com/source/patterns/core/coordinators/code.coordinator.ts.md",
            "ref": "anatomy:file-patterns-core-coordinators-code-coordinator-ts"
          }
        }
      ],
      "exported": true,
      "flow": "leaf",
      "kind": "lexical_declaration",
      "line": 93,
      "name": "deadFindings",
      "signature": "export const deadFindings = function deadFindings("
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/analyzers/definition.analyzer.ts",
          "name": "isCleanName",
          "source": {
            "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-analyzers-definition-analyzer-ts",
            "json": "https://banes-lab.com/json/source/patterns/core/analyzers/definition.analyzer.ts",
            "label": "core/analyzers/definition.analyzer.ts",
            "markdown": "https://banes-lab.com/source/patterns/core/analyzers/definition.analyzer.ts.md",
            "ref": "anatomy:file-patterns-core-analyzers-definition-analyzer-ts"
          }
        },
        {
          "file": "core/analyzers/definition.analyzer.ts",
          "name": "isModuleDefinition",
          "source": {
            "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-analyzers-definition-analyzer-ts",
            "json": "https://banes-lab.com/json/source/patterns/core/analyzers/definition.analyzer.ts",
            "label": "core/analyzers/definition.analyzer.ts",
            "markdown": "https://banes-lab.com/source/patterns/core/analyzers/definition.analyzer.ts.md",
            "ref": "anatomy:file-patterns-core-analyzers-definition-analyzer-ts"
          }
        }
      ],
      "callers": [],
      "exported": false,
      "flow": "entry",
      "kind": "lexical_declaration",
      "line": 46,
      "name": "isNamedDefinition",
      "signature": "const isNamedDefinition = function isNamedDefinition(symbol: CodeSymbol): boolean {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/analyzers/syntax.analyzer.ts",
          "name": "identifierNames",
          "source": {
            "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-analyzers-syntax-analyzer-ts",
            "json": "https://banes-lab.com/json/source/patterns/core/analyzers/syntax.analyzer.ts",
            "label": "core/analyzers/syntax.analyzer.ts",
            "markdown": "https://banes-lab.com/source/patterns/core/analyzers/syntax.analyzer.ts.md",
            "ref": "anatomy:file-patterns-core-analyzers-syntax-analyzer-ts"
          }
        },
        {
          "file": "core/counters/base.counter.ts",
          "name": "increment",
          "source": {
            "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-counters-base-counter-ts",
            "json": "https://banes-lab.com/json/source/patterns/core/counters/base.counter.ts",
            "label": "core/counters/base.counter.ts",
            "markdown": "https://banes-lab.com/source/patterns/core/counters/base.counter.ts.md",
            "ref": "anatomy:file-patterns-core-counters-base-counter-ts"
          }
        }
      ],
      "callers": [],
      "exported": false,
      "flow": "entry",
      "kind": "lexical_declaration",
      "line": 70,
      "name": "usedNames",
      "signature": "const usedNames = function usedNames(records: readonly Record<string, unknown>[]): Set<string> {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/analyzers/definition.analyzer.ts",
          "name": "startsUpper",
          "source": {
            "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-analyzers-definition-analyzer-ts",
            "json": "https://banes-lab.com/json/source/patterns/core/analyzers/definition.analyzer.ts",
            "label": "core/analyzers/definition.analyzer.ts",
            "markdown": "https://banes-lab.com/source/patterns/core/analyzers/definition.analyzer.ts.md",
            "ref": "anatomy:file-patterns-core-analyzers-definition-analyzer-ts"
          }
        }
      ],
      "callers": [],
      "exported": false,
      "flow": "entry",
      "kind": "lexical_declaration",
      "line": 29,
      "name": "isExported",
      "signature": "const isExported = function isExported(symbol: CodeSymbol): boolean {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 8,
      "name": "REL_DEAD",
      "signature": "const REL_DEAD = 9;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 9,
      "name": "REL_DUP",
      "signature": "const REL_DUP = 9;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 10,
      "name": "REFERENCE_MIN",
      "signature": "const REFERENCE_MIN = 2;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 11,
      "name": "MIN_DUP_FILES",
      "signature": "const MIN_DUP_FILES = 2;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 12,
      "name": "DUP_MAX_FILES",
      "signature": "const DUP_MAX_FILES = 4;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 13,
      "name": "MIN_DUP_SIZE",
      "signature": "const MIN_DUP_SIZE = 160;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 14,
      "name": "CONFIDENCE",
      "signature": "const CONFIDENCE = \"high\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 15,
      "name": "GO_EXT",
      "signature": "const GO_EXT = \".go\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 16,
      "name": "SHELL_EXT",
      "signature": "const SHELL_EXT = \".sh\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 17,
      "name": "METHOD_KIND",
      "signature": "const METHOD_KIND = \"method\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 18,
      "name": "GENERATED_MARKER",
      "signature": "const GENERATED_MARKER = \".generated.\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 19,
      "name": "GO_ENTRY",
      "signature": "const GO_ENTRY: ReadonlySet<string> = new Set([\"main\", \"init\"]);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 20,
      "name": "SCHEMA_EXTS",
      "signature": "const SCHEMA_EXTS: readonly string[] = [\".sql\", \".graphql\", \".gql\", \".prisma\"];"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 21,
      "name": "TYPE_DECL_KINDS",
      "signature": "const TYPE_DECL_KINDS: ReadonlySet<string> = new Set([\"interface_declaration\", \"type_alias_declaration\"]);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 22,
      "name": "MALFORMED_CHARS",
      "signature": "const MALFORMED_CHARS: ReadonlySet<string> = new Set([\" \", \"{\", \"}\", \"(\", \")\", \",\", \".\", '\"', \"'\", \"[\", \"]\"]);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 25,
      "name": "first",
      "signature": "const first = name.charAt(0);"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 50,
      "name": "isUnreferenced",
      "signature": "const isUnreferenced = function isUnreferenced("
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 58,
      "name": "isHandWritten",
      "signature": "const isHandWritten = function isHandWritten(symbol: CodeSymbol): boolean {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 62,
      "name": "isDiagnosableSource",
      "signature": "const isDiagnosableSource = function isDiagnosableSource(symbol: CodeSymbol): boolean {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 71,
      "name": "counts",
      "signature": "const counts = new Map<string, number>();"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 78,
      "name": "deadFinding",
      "signature": "const deadFinding = function deadFinding(def: CodeSymbol): CodeFinding {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": true,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 98,
      "name": "used",
      "signature": "const used = usedNames(records);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": true,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 99,
      "name": "dead",
      "signature": "const dead = symbols"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 106,
      "name": "byHash",
      "signature": "const byHash = new Map<string, CodeSymbol[]>();"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 111,
      "name": "files",
      "signature": "const files = [...new Set(group.map((def) => def.file))].sort((a, b) => a.localeCompare(b));"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 112,
      "name": "[first]",
      "signature": "const [first] = group;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 113,
      "name": "qualifies",
      "signature": "const qualifies ="
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": true,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 136,
      "name": "byName",
      "signature": "const byName = new Map<string, CodeSymbol[]>();"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": true,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 137,
      "name": "exported",
      "signature": "const exported = symbols.filter("
    }
  ],
  "document": null,
  "findings": [],
  "generated": false,
  "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-analyzers-definition-analyzer-ts",
  "language": "typescript",
  "layer": "processing",
  "name": "definition.analyzer.ts",
  "path": "core/analyzers/definition.analyzer.ts",
  "ref": "anatomy:file-patterns-core-analyzers-definition-analyzer-ts",
  "relations": [
    {
      "links": [
        {
          "href": "https://banes-lab.com/anatomy/patterns#folder-patterns-core-analyzers",
          "json": "https://banes-lab.com/json/anatomy/patterns/folder-patterns-core-analyzers",
          "label": "core/analyzers",
          "markdown": "https://banes-lab.com/anatomy/patterns/folder-patterns-core-analyzers.md",
          "ref": "chapter:/anatomy/patterns#folder-patterns-core-analyzers"
        }
      ],
      "relation": "contained-in"
    },
    {
      "links": [
        {
          "href": "https://banes-lab.com/anatomy/patterns#file-patterns-configuration-strings-code-strings-ts",
          "json": "https://banes-lab.com/json/source/patterns/configuration/strings/code.strings.ts",
          "label": "configuration/strings/code.strings.ts",
          "markdown": "https://banes-lab.com/source/patterns/configuration/strings/code.strings.ts.md",
          "ref": "anatomy:file-patterns-configuration-strings-code-strings-ts"
        },
        {
          "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-analyzers-syntax-analyzer-ts",
          "json": "https://banes-lab.com/json/source/patterns/core/analyzers/syntax.analyzer.ts",
          "label": "core/analyzers/syntax.analyzer.ts",
          "markdown": "https://banes-lab.com/source/patterns/core/analyzers/syntax.analyzer.ts.md",
          "ref": "anatomy:file-patterns-core-analyzers-syntax-analyzer-ts"
        },
        {
          "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-counters-base-counter-ts",
          "json": "https://banes-lab.com/json/source/patterns/core/counters/base.counter.ts",
          "label": "core/counters/base.counter.ts",
          "markdown": "https://banes-lab.com/source/patterns/core/counters/base.counter.ts.md",
          "ref": "anatomy:file-patterns-core-counters-base-counter-ts"
        }
      ],
      "relation": "uses"
    },
    {
      "links": [
        {
          "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-coordinators-code-coordinator-ts",
          "json": "https://banes-lab.com/json/source/patterns/core/coordinators/code.coordinator.ts",
          "label": "core/coordinators/code.coordinator.ts",
          "markdown": "https://banes-lab.com/source/patterns/core/coordinators/code.coordinator.ts.md",
          "ref": "anatomy:file-patterns-core-coordinators-code-coordinator-ts"
        }
      ],
      "relation": "used-by"
    },
    {
      "links": [
        {
          "href": "https://banes-lab.com/anatomy/patterns#folder-patterns-configuration-strings",
          "json": "https://banes-lab.com/json/anatomy/patterns/folder-patterns-configuration-strings",
          "label": "configuration/strings",
          "markdown": "https://banes-lab.com/anatomy/patterns/folder-patterns-configuration-strings.md",
          "ref": "chapter:/anatomy/patterns#folder-patterns-configuration-strings"
        },
        {
          "href": "https://banes-lab.com/anatomy/patterns#folder-patterns-core-analyzers",
          "json": "https://banes-lab.com/json/anatomy/patterns/folder-patterns-core-analyzers",
          "label": "core/analyzers",
          "markdown": "https://banes-lab.com/anatomy/patterns/folder-patterns-core-analyzers.md",
          "ref": "chapter:/anatomy/patterns#folder-patterns-core-analyzers"
        },
        {
          "href": "https://banes-lab.com/anatomy/patterns#folder-patterns-core-coordinators",
          "json": "https://banes-lab.com/json/anatomy/patterns/folder-patterns-core-coordinators",
          "label": "core/coordinators",
          "markdown": "https://banes-lab.com/anatomy/patterns/folder-patterns-core-coordinators.md",
          "ref": "chapter:/anatomy/patterns#folder-patterns-core-coordinators"
        },
        {
          "href": "https://banes-lab.com/anatomy/patterns#folder-patterns-core-counters",
          "json": "https://banes-lab.com/json/anatomy/patterns/folder-patterns-core-counters",
          "label": "core/counters",
          "markdown": "https://banes-lab.com/anatomy/patterns/folder-patterns-core-counters.md",
          "ref": "chapter:/anatomy/patterns#folder-patterns-core-counters"
        }
      ],
      "relation": "linked-from"
    }
  ],
  "slots": {
    "concern": "analyzer",
    "subject": "definition",
    "variant": null
  },
  "stats": {
    "bytes": 5666,
    "callable": 13,
    "definitions": 38,
    "edges": 7,
    "exported": 6,
    "files": 1,
    "findings": {},
    "flows": {
      "relay": 2,
      "leaf": 4,
      "entry": 3,
      "isolated": 29
    },
    "lines": {
      "blank": 14,
      "code": 130,
      "total": 144
    }
  },
  "summary": "130 lines of code and 38 definitions.",
  "text": "https://banes-lab.com/source/patterns/core/analyzers/definition.analyzer.ts.txt",
  "tree": "patterns",
  "siblings": {
    "next": {
      "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-analyzers-dependency-analyzer-ts",
      "json": "https://banes-lab.com/json/source/patterns/core/analyzers/dependency.analyzer.ts",
      "label": "core/analyzers/dependency.analyzer.ts",
      "markdown": "https://banes-lab.com/source/patterns/core/analyzers/dependency.analyzer.ts.md",
      "ref": "anatomy:file-patterns-core-analyzers-dependency-analyzer-ts"
    },
    "previous": {
      "href": "https://banes-lab.com/anatomy/patterns#file-patterns-core-analyzers-concern-analyzer-ts",
      "json": "https://banes-lab.com/json/source/patterns/core/analyzers/concern.analyzer.ts",
      "label": "core/analyzers/concern.analyzer.ts",
      "markdown": "https://banes-lab.com/source/patterns/core/analyzers/concern.analyzer.ts.md",
      "ref": "anatomy:file-patterns-core-analyzers-concern-analyzer-ts"
    }
  },
  "up": {
    "href": null,
    "json": "https://banes-lab.com/json/api/source/patterns/core/analyzers",
    "label": "core/analyzers",
    "markdown": "https://banes-lab.com/api/source/patterns/core/analyzers.md",
    "ref": "api:source/patterns/core/analyzers"
  }
}
