@@ -9,43 +9,43 @@ perform scans and provide precise license conclusions.
9
9
Key Functionality
10
10
-----------------
11
11
12
- * License Rule Management: Stores and manages a large collection of
13
- license rules, including full texts, snippets, and regular expressions.
12
+ - License Rule Management: Stores and manages a large collection of
13
+ license rules, including full texts, snippets, and regular expressions.
14
14
15
- * Pattern Matching: Implements sophisticated algorithms for matching
16
- detected code against known license patterns and texts.
15
+ - Pattern Matching: Implements sophisticated algorithms for matching
16
+ detected code against known license patterns and texts.
17
17
18
- * License Detection Logic: Contains the core logic for processing scan
19
- input, applying rules, and determining the presence and type of
20
- licenses.
18
+ - License Detection Logic: Contains the core logic for processing scan
19
+ input, applying rules, and determining the presence and type of
20
+ licenses.
21
21
22
- * Rule-based Detection: Utilizes a robust system of rules to identify
23
- licenses even when only fragments or variations of license texts are
24
- present.
22
+ - Rule-based Detection: Utilizes a robust system of rules to identify
23
+ licenses even when only fragments or variations of license texts are
24
+ present.
25
25
26
- * License Expression Parsing: Supports the parsing and interpretation of
27
- complex license expressions (e.g., "MIT AND Apache-2.0").
26
+ - License Expression Parsing: Supports the parsing and interpretation of
27
+ complex license expressions (e.g., "MIT AND Apache-2.0").
28
28
29
29
30
30
How It Works (High-Level)
31
31
-------------------------
32
32
33
33
At a high level, the `licensedcode`` module operates by:
34
34
35
- 1. Loading License Data: It initializes by loading a curated set of
36
- license texts, short license identifiers, and detection rules from its
37
- internal data store.
35
+ 1. Loading License Data: It initializes by loading a curated set of
36
+ license texts, short license identifiers, and detection rules from its
37
+ internal data store.
38
38
39
- 2. Scanning Input: When ScanCode processes a file or directory, the
40
- content is converted into an internal representation (a "query").
39
+ 2. Scanning Input: When ScanCode processes a file or directory, the
40
+ content is converted into an internal representation (a "query").
41
41
42
- 3. Applying Rules: The module then applies its extensive set of rules and
43
- patterns to the input content through a multi-stage pipeline, looking
44
- for matches.
42
+ 3. Applying Rules: The module then applies its extensive set of rules and
43
+ patterns to the input content through a multi-stage pipeline, looking
44
+ for matches.
45
45
46
- 4. Reporting Detections: Upon successful matches, it reports the
47
- identified licenses, their confidence levels, and the exact locations
48
- (lines, characters) where they were found.
46
+ 4. Reporting Detections: Upon successful matches, it reports the
47
+ identified licenses, their confidence levels, and the exact locations
48
+ (lines, characters) where they were found.
49
49
50
50
For a more in-depth understanding of the underlying technical principles
51
51
and the detection pipeline, please refer to the sections below.
0 commit comments