/// <summary> /// Loads a script assembly using a specified CLR assembly. /// </summary> /// <param name="assembly">The assembly to be reflected.</param> /// <returns>The script assembly.</returns> /// <exception cref="InvalidScriptAssemblyException">The assembly is invalid.</exception> public static ScriptAssembly LoadFromAssembly(Assembly /*!*/ assembly) { Debug.Assert(assembly != null); ScriptAssembly result; ScriptAssemblyAttribute attr = GetAttribute(assembly); if (attr.IsMultiScript) { result = new MultiScriptAssembly(); } else { result = new SingleScriptAssembly(); } result.namespacing = attr.Namespacing; result.module = GetModule(assembly); result.LoadedFromAssembly(assembly); return(result); }
/// <summary> /// Loads a script assembly using a specified CLR assembly. /// </summary> /// <param name="assembly">The assembly to be reflected.</param> /// <returns>The script assembly.</returns> /// <exception cref="InvalidScriptAssemblyException">The assembly is invalid.</exception> public static ScriptAssembly LoadFromAssembly(Assembly/*!*/ assembly) { Debug.Assert(assembly != null); ScriptAssembly result; ScriptAssemblyAttribute attr = GetAttribute(assembly); if (attr.IsMultiScript) result = new MultiScriptAssembly(); else result = new SingleScriptAssembly(); result.namespacing = attr.Namespacing; result.module = GetModule(assembly); result.LoadedFromAssembly(assembly); return result; }