public virtual AssemblyNameReference ImportReference(SR.AssemblyName name) { Mixin.CheckName(name); AssemblyNameReference reference; if (TryGetAssemblyNameReference(name, out reference)) { return(reference); } reference = new AssemblyNameReference(name.Name, name.Version) { PublicKeyToken = name.GetPublicKeyToken(), Culture = name.CultureInfo.Name, HashAlgorithm = (AssemblyHashAlgorithm)name.HashAlgorithm, }; module.AssemblyReferences.Add(reference); return(reference); }
public PointerType(TypeReference type) : base(type) { Mixin.CheckType(type); this.etype = MD.ElementType.Ptr; }
public SentinelType(TypeReference type) : base(type) { Mixin.CheckType(type); this.etype = MD.ElementType.Sentinel; }
public ByReferenceType(TypeReference type) : base(type) { Mixin.CheckType(type); this.etype = MD.ElementType.ByRef; }
protected EventReference(string name, TypeReference eventType) : base(name) { Mixin.CheckType(eventType, Mixin.Argument.eventType); event_type = eventType; }
public PinnedType(TypeReference type) : base(type) { Mixin.CheckType(type); this.etype = MD.ElementType.Pinned; }
public ArrayType(TypeReference type) : base(type) { Mixin.CheckType(type); etype = MD.ElementType.Array; }
public virtual MethodReference ImportReference(MethodReference method, IGenericParameterProvider context) { Mixin.CheckMethod(method); return(ImportMethod(method, ImportGenericContext.For(context))); }
public virtual FieldReference ImportReference(FieldReference field, IGenericParameterProvider context) { Mixin.CheckField(field); return(ImportField(field, ImportGenericContext.For(context))); }
public virtual TypeReference ImportReference(TypeReference type, IGenericParameterProvider context) { Mixin.CheckType(type); return(ImportType(type, ImportGenericContext.For(context))); }
public virtual AssemblyDefinition Resolve(AssemblyNameReference name, ReaderParameters parameters) { Mixin.CheckName(name); Mixin.CheckParameters(parameters); var assembly = SearchDirectory(name, directories, parameters); if (assembly != null) { return(assembly); } if (name.IsRetargetable) { // if the reference is retargetable, zero it name = new AssemblyNameReference(name.Name, Mixin.ZeroVersion) { PublicKeyToken = Empty <byte> .Array, }; } #if NET_CORE assembly = SearchTrustedPlatformAssemblies(name, parameters); if (assembly != null) { return(assembly); } #else var framework_dir = Path.GetDirectoryName(typeof(object).Module.FullyQualifiedName); var framework_dirs = on_mono ? new [] { framework_dir, Path.Combine(framework_dir, "Facades") } : new [] { framework_dir }; if (IsZero(name.Version)) { assembly = SearchDirectory(name, framework_dirs, parameters); if (assembly != null) { return(assembly); } } if (name.Name == "mscorlib") { assembly = GetCorlib(name, parameters); if (assembly != null) { return(assembly); } } assembly = GetAssemblyInGac(name, parameters); if (assembly != null) { return(assembly); } assembly = SearchDirectory(name, framework_dirs, parameters); if (assembly != null) { return(assembly); } #endif if (ResolveFailure != null) { assembly = ResolveFailure(this, name); if (assembly != null) { return(assembly); } } throw new AssemblyResolutionException(name); }
public TypeDefinition GetType(string @namespace, string name) { Mixin.CheckName(name); return(((TypeDefinitionCollection)this.Types).GetType(@namespace ?? string.Empty, name)); }
private static Stream GetFileStream(string fileName, FileMode mode, FileAccess access, FileShare share) { Mixin.CheckFileName(fileName); return(new FileStream(fileName, mode, access, share)); }
public CustomAttributeNamedArgument(string name, CustomAttributeArgument argument) { Mixin.CheckName(name); this.name = name; this.argument = argument; }
public CustomAttributeArgument(TypeReference type, object value) { Mixin.CheckType(type); this.type = type; this.value = value; }