@@ -14,13 +14,19 @@ namespace Semmle.Extraction.CIL
1414 /// </summary>
1515 partial class Context : IDisposable
1616 {
17- public Extraction . Context cx ;
1817 readonly FileStream stream ;
19- public readonly MetadataReader mdReader ;
20- public readonly PEReader peReader ;
21- public readonly string assemblyPath ;
22- public Entities . Assembly assembly ;
23- public PDB . IPdb pdb ;
18+ Entities . Assembly ? assemblyNull ;
19+
20+ public Extraction . Context cx { get ; }
21+ public MetadataReader mdReader { get ; }
22+ public PEReader peReader { get ; }
23+ public string assemblyPath { get ; }
24+ public Entities . Assembly assembly
25+ {
26+ get { return assemblyNull ! ; }
27+ set { assemblyNull = value ; }
28+ }
29+ public PDB . IPdb ? pdb { get ; }
2430
2531 public Context ( Extraction . Context cx , string assemblyPath , bool extractPdbs )
2632 {
@@ -105,7 +111,7 @@ public Entities.Type ErrorType
105111 /// </summary>
106112 /// <param name="handle">The handle of the method.</param>
107113 /// <returns>The debugging information, or null if the information could not be located.</returns>
108- public PDB . IMethod GetMethodDebugInformation ( MethodDefinitionHandle handle )
114+ public PDB . IMethod ? GetMethodDebugInformation ( MethodDefinitionHandle handle )
109115 {
110116 return pdb == null ? null : pdb . GetMethod ( handle . ToDebugInformationHandle ( ) ) ;
111117 }
@@ -125,7 +131,8 @@ public GenericContext(Context cx)
125131 }
126132
127133 /// <summary>
128- /// The list of generic type parameters.
134+ /// The list of generic type parameters, including type parameters of
135+ /// containing types.
129136 /// </summary>
130137 public abstract IEnumerable < Entities . Type > TypeParameters { get ; }
131138
0 commit comments