/// <summary> /// Load an asset file by filename. /// </summary> /// <param name="part"></param> /// <param name="filename"></param> /// <returns>loaded asset, or null if file was not found</returns> /// <exception cref="Exception">on problem loading asset</exception> public static IAsset Load(this IAssetLoaderPart part, string filename) { var match = part.Pattern.Match(filename); if (!match.Success) { return(null); } return(part.Load(match)); }
/// <summary> /// Configure options, for chain calls. /// </summary> /// <param name="part"></param> /// <param name="configurer">delegeate that modifies options</param> /// <returns>part</returns> public static IAssetLoaderPart ConfigureOptions(this IAssetLoaderPart part, Action <IAssetLoaderPartOptions> configurer) { configurer(part.Options); return(part); }
/// <summary> /// Set options, for chain calls. /// </summary> /// <param name="part"></param> /// <param name="options">new options</param> /// <returns>part</returns> public static IAssetLoaderPart SetOptions(this IAssetLoaderPart part, IAssetLoaderPartOptions options) { part.Options = options; return(part); }
/// <summary> /// List filenames /// </summary> /// <param name="part"></param> /// <returns></returns> public static IEnumerable <string> ListFiles(this IAssetLoaderPart part) => part.ListLoadables().Select(param => part.Pattern.Print(param));
/// <summary> /// Append new base path(s) top search file resources from. /// </summary> /// <param name="part"></param> /// <param name="paths"></param> /// <returns>part</returns> public static IAssetLoaderPart AddPaths(this IAssetLoaderPart part, params String[] paths) { part.Options.AddPaths(paths); return(part); }
/// <summary> /// Append new base path(s) top search file resources from. /// </summary> /// <param name="part"></param> /// <param name="paths"></param> /// <returns>part</returns> public static IAssetLoaderPart AddPaths(this IAssetLoaderPart part, IEnumerable <String> paths) { part.Options.AddPaths(paths); return(part); }
/// <summary> /// Append new base path(s) top search file resources from. /// </summary> /// <param name="part"></param> /// <param name="path"></param> /// <returns>part</returns> public static IAssetLoaderPart AddPath(this IAssetLoaderPart part, String path) { part.Options.AddPath(path); return(part); }
/// <summary> /// Append new assemblies to search embedded resources from. /// </summary> /// <param name="part"></param> /// <param name="assemblies"></param> /// <returns>part</returns> public static IAssetLoaderPart AddAssemblies(this IAssetLoaderPart part, IEnumerable <Assembly> assemblies) { part.Options.AddAssemblies(assemblies); return(part); }
/// <summary> /// Append new assemblies to search embedded resources from. /// </summary> /// <param name="part"></param> /// <param name="assemblies"></param> /// <returns>part</returns> public static IAssetLoaderPart AddAssemblies(this IAssetLoaderPart part, params Assembly[] assemblies) { part.Options.AddAssemblies(assemblies); return(part); }
/// <summary> /// Append new assemblies to search embedded resources from. /// </summary> /// <param name="part"></param> /// <param name="assembly"></param> /// <returns>part</returns> public static IAssetLoaderPart AddAssembly(this IAssetLoaderPart part, Assembly assembly) { part.Options.AddAssemblies(assembly); return(part); }
/// <summary> /// Append new parameters to match parameters property. /// </summary> /// <param name="part"></param> /// <param name="parameters"></param> /// <returns>part</returns> public static IAssetLoaderPart AddMatchParameters(this IAssetLoaderPart part, params string[] parameters) { part.Options.AddMatchParameters(parameters); return(part); }