public override bool Process( AssemblyName assemblyIn, ref AssemblyName assemblyOut) { AssemblyName name = new AssemblyName(assemblyIn.FullName); LinkMask linkMask = LinkMask.All; /* PSEUDOCODE: * * LinkMask linkMask = InstallEnvironment.AssemblyLinkage(name); * */ /* PSEUDOCODE * foreach (ModuleDeclaration module in assemblyIn.GetAssemblyEnvelope().Modules) * { * foreach (ModuleRefDeclaration xref in module.ModuleRefs) * { * * if(InstallEnvironment.AssemblyLinkage(xref.Name) < linkMask) * * throw new Exception(); * * } * }*/ assemblyOut = assemblyIn; return(true); }
/// <summary> /// Constructor with usage. /// </summary> /// <param name="linkMask"></param> public LinkableAttribute(LinkMask linkMask) { mask = linkMask; }