[msvc] Update csproj files (#4284)
[mono.git] / mcs / tools / pdb2mdb / SourceLocationProvider.cs
1 //-----------------------------------------------------------------------------
2 //
3 // Copyright (C) Microsoft Corporation.  All Rights Reserved.
4 //
5 //-----------------------------------------------------------------------------
6 using System;
7 using System.Collections.Generic;
8 using System.IO;
9 using Microsoft.Cci;
10 using Microsoft.Cci.Pdb;
11 using System.Text;
12 using System.Diagnostics.SymbolStore;
13
14 namespace Microsoft.Cci {
15
16   internal sealed class UsedNamespace : IUsedNamespace {
17
18     internal UsedNamespace(IName alias, IName namespaceName) {
19       this.alias = alias;
20       this.namespaceName = namespaceName;
21     }
22
23     public IName Alias {
24       get { return this.alias; }
25     }
26     readonly IName alias;
27
28     public IName NamespaceName {
29       get { return this.namespaceName; }
30     }
31     readonly IName namespaceName;
32
33   }
34
35   internal class NamespaceScope : INamespaceScope {
36
37     internal NamespaceScope(IEnumerable<IUsedNamespace> usedNamespaces) {
38       this.usedNamespaces = usedNamespaces;
39     }
40
41     public IEnumerable<IUsedNamespace> UsedNamespaces {
42       get { return this.usedNamespaces; }
43     }
44     readonly IEnumerable<IUsedNamespace> usedNamespaces;
45
46   }
47
48   internal sealed class PdbIteratorScope : ILocalScope {
49
50     internal PdbIteratorScope(uint offset, uint length) {
51       this.offset = offset;
52       this.length = length;
53     }
54
55     public uint Offset {
56       get { return this.offset; }
57     }
58     uint offset;
59
60     public uint Length {
61       get { return this.length; }
62     }
63     uint length;
64
65   }
66 }