-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDocumentAnalysis.cs
More file actions
46 lines (43 loc) · 1.74 KB
/
Copy pathDocumentAnalysis.cs
File metadata and controls
46 lines (43 loc) · 1.74 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
using System.Collections.Generic;
using Heddle.Language;
using Heddle.Strings.Core;
namespace Heddle.LanguageServices
{
/// <summary>
/// Immutable snapshot of one analyzed document version (phase 6 D10). Every member is a projection of engine
/// data; safe to share across threads.
/// </summary>
public sealed class DocumentAnalysis
{
internal DocumentAnalysis(
string path, int version, string text, LineMap lines,
IReadOnlyList<HeddleToken> tokens, IReadOnlyList<BlockPosition> skippedTokens,
IReadOnlyList<HeddleDiagnostic> diagnostics, IReadOnlyList<DefinitionInfo> definitions,
IReadOnlyList<ImportLink> imports, ScopeMapView scopes, bool cSharpTierUsed)
{
Path = path;
Version = version;
Text = text;
Lines = lines;
Tokens = tokens;
SkippedTokens = skippedTokens;
Diagnostics = diagnostics;
Definitions = definitions;
Imports = imports;
Scopes = scopes;
CSharpTierUsed = cSharpTierUsed;
}
public string Path { get; }
public int Version { get; }
public string Text { get; }
public LineMap Lines { get; }
public IReadOnlyList<HeddleToken> Tokens { get; }
public IReadOnlyList<BlockPosition> SkippedTokens { get; }
public IReadOnlyList<HeddleDiagnostic> Diagnostics { get; }
public IReadOnlyList<DefinitionInfo> Definitions { get; }
public IReadOnlyList<ImportLink> Imports { get; }
public ScopeMapView Scopes { get; }
/// <summary>True when the Roslyn (C# tier) pass ran for this analysis (D9).</summary>
public bool CSharpTierUsed { get; }
}
}