diff --git a/branch/4.0.0-beta/api/IPA.Config.Data.Text.html b/branch/4.0.0-beta/api/IPA.Config.Data.Text.html
index 9e40d2d5..c72ac29a 100644
--- a/branch/4.0.0-beta/api/IPA.Config.Data.Text.html
+++ b/branch/4.0.0-beta/api/IPA.Config.Data.Text.html
@@ -169,7 +169,7 @@ String is so that it doesn't conflict with Improve this Doc
- View Source
+ View Source
diff --git a/branch/4.0.0-beta/api/IPA.Config.Stores.Attributes.SerializedNameAttribute.html b/branch/4.0.0-beta/api/IPA.Config.Stores.Attributes.SerializedNameAttribute.html
index 7ee2f5ba..458396fc 100644
--- a/branch/4.0.0-beta/api/IPA.Config.Stores.Attributes.SerializedNameAttribute.html
+++ b/branch/4.0.0-beta/api/IPA.Config.Stores.Attributes.SerializedNameAttribute.html
@@ -275,7 +275,7 @@ However, if we were to add a Improve this Doc
- View Source
+ View Source
diff --git a/branch/4.0.0-beta/api/IPA.Config.Stores.Converters.NullableConverter-2.html b/branch/4.0.0-beta/api/IPA.Config.Stores.Converters.NullableConverter-2.html
index 314eb553..ab1ae737 100644
--- a/branch/4.0.0-beta/api/IPA.Config.Stores.Converters.NullableConverter-2.html
+++ b/branch/4.0.0-beta/api/IPA.Config.Stores.Converters.NullableConverter-2.html
@@ -171,7 +171,7 @@ to use as the underlying converter. Use this in the Improve this Doc
- View Source
+ View Source
NullableConverter()
@@ -236,7 +236,7 @@ to use as the underlying converter. Use this in the Improve this Doc
diff --git a/branch/4.0.0-beta/api/IPA.Config.Stores.IValueConverter.html b/branch/4.0.0-beta/api/IPA.Config.Stores.IValueConverter.html
index 655e82aa..988117c9 100644
--- a/branch/4.0.0-beta/api/IPA.Config.Stores.IValueConverter.html
+++ b/branch/4.0.0-beta/api/IPA.Config.Stores.IValueConverter.html
@@ -116,7 +116,7 @@ Converters do not need to perform null checks, as the serializer and de
Improve this Doc
- View Source
+ View Source
diff --git a/branch/4.0.0-beta/api/IPA.Logging.StandardLogger.html b/branch/4.0.0-beta/api/IPA.Logging.StandardLogger.html
index 0347a2f1..fe721796 100644
--- a/branch/4.0.0-beta/api/IPA.Logging.StandardLogger.html
+++ b/branch/4.0.0-beta/api/IPA.Logging.StandardLogger.html
@@ -180,7 +180,7 @@ The modification of printers on a parent are reflected down the chain.
Improve this Doc
- View Source
+ View Source
Indicates that the target method should be called when the plugin is disabled.
+
Inheritance
@@ -243,6 +244,16 @@
[AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = false)]
public sealed class OnDisableAttribute : Attribute, _Attribute, IEdgeLifecycleAttribute
+
Remarks
+
+This attribute is interchangable with OnExitAttribute, and is treated identically.
+They are seperate to allow plugin code to more clearly describe the intent of the methods.
+
Indicates that the target method should be called when the plugin is enabled.
+
Inheritance
@@ -243,6 +244,16 @@
[AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = false)]
public sealed class OnEnableAttribute : Attribute, _Attribute, IEdgeLifecycleAttribute
+
Remarks
+
+This attribute is interchangable with OnStartAttribute, and is treated identically.
+They are seperate to allow plugin code to more clearly describe the intent of the methods.
+
Indicates that the target method should be called when the game exits.
+
Inheritance
@@ -243,6 +244,16 @@
[AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = false)]
public sealed class OnExitAttribute : Attribute, _Attribute, IEdgeLifecycleAttribute
+
Remarks
+
+This attribute is interchangable with OnDisableAttribute, and is treated identically.
+They are seperate to allow plugin code to more clearly describe the intent of the methods.
+
Indicates that the target method should be called when the game starts.
+
Inheritance
@@ -243,6 +244,16 @@
[AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = false)]
public sealed class OnStartAttribute : Attribute, _Attribute, IEdgeLifecycleAttribute
+
Remarks
+
+This attribute is interchangable with OnEnableAttribute, and is treated identically.
+They are seperate to allow plugin code to more clearly describe the intent of the methods.
+
diff --git a/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.ReaderWriterLockSlimReadLocker.html b/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.ReaderWriterLockSlimReadLocker.html
index 04c7aefa..276e6874 100644
--- a/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.ReaderWriterLockSlimReadLocker.html
+++ b/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.ReaderWriterLockSlimReadLocker.html
@@ -125,7 +125,7 @@ it is disposed. Create this with Improve this Doc
- View Source
+ View Source
IDisposable.Dispose()
@@ -186,7 +186,7 @@ it is disposed. Create this with Improve this Doc
diff --git a/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.ReaderWriterLockSlimUpgradableReadLocker.html b/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.ReaderWriterLockSlimUpgradableReadLocker.html
index 26475331..8bf86451 100644
--- a/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.ReaderWriterLockSlimUpgradableReadLocker.html
+++ b/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.ReaderWriterLockSlimUpgradableReadLocker.html
@@ -125,7 +125,7 @@ when it is disposed. Create this with Improve this Doc
- View Source
+ View Source
diff --git a/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.ReaderWriterLockSlimWriteLocker.html b/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.ReaderWriterLockSlimWriteLocker.html
index 6454c88d..d3e47664 100644
--- a/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.ReaderWriterLockSlimWriteLocker.html
+++ b/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.ReaderWriterLockSlimWriteLocker.html
@@ -125,7 +125,7 @@ it is disposed. Create this with Improve this Doc
- View Source
+ View Source
IDisposable.Dispose()
@@ -186,7 +186,7 @@ it is disposed. Create this with Improve this Doc
diff --git a/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.SemaphoreSlimAsyncLocker.html b/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.SemaphoreSlimAsyncLocker.html
index 41678691..8e797bd5 100644
--- a/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.SemaphoreSlimAsyncLocker.html
+++ b/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.SemaphoreSlimAsyncLocker.html
@@ -125,7 +125,7 @@ when it is disposed. Create this with Improve this Doc
- View Source
+ View Source
IDisposable.Dispose()
@@ -186,7 +186,7 @@ when it is disposed. Create this with Improve this Doc
diff --git a/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.html b/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.html
index 05797df8..bfd84db1 100644
--- a/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.html
+++ b/branch/4.0.0-beta/api/IPA.Utilities.Async.Synchronization.html
@@ -136,7 +136,7 @@ with whichever member you want to use, according to your lock type.
Improve this Doc
- View Source
+ View Source
Options that a plugin must specify to describe how it expects to be run.
+
diff --git a/branch/4.0.0-beta/api/index.html b/branch/4.0.0-beta/api/index.html
index 9b4ae74f..867370b1 100644
--- a/branch/4.0.0-beta/api/index.html
+++ b/branch/4.0.0-beta/api/index.html
@@ -89,7 +89,7 @@ Select a namespace and a class on the left to get started.
diff --git a/branch/4.0.0-beta/articles/command-line.html b/branch/4.0.0-beta/articles/command-line.html
index 751dd753..e78c6bb2 100644
--- a/branch/4.0.0-beta/articles/command-line.html
+++ b/branch/4.0.0-beta/articles/command-line.html
@@ -182,7 +182,7 @@ avaliable. If there is, it will be downloaded and installed on the next run. Thi
diff --git a/branch/4.0.0-beta/articles/contributing.html b/branch/4.0.0-beta/articles/contributing.html
index 76ca5a80..1dad1e77 100644
--- a/branch/4.0.0-beta/articles/contributing.html
+++ b/branch/4.0.0-beta/articles/contributing.html
@@ -116,7 +116,7 @@ should reference the copy in there. When building for Release, it just uses the
diff --git a/branch/4.0.0-beta/articles/start-user.html b/branch/4.0.0-beta/articles/start-user.html
index 7dcdd67c..93cdaa2f 100644
--- a/branch/4.0.0-beta/articles/start-user.html
+++ b/branch/4.0.0-beta/articles/start-user.html
@@ -160,7 +160,7 @@ the game directory, though your plugins will be moved to a different folder when
diff --git a/branch/4.0.0-beta/index.json b/branch/4.0.0-beta/index.json
index 28ed3e1a..ffe87c71 100644
--- a/branch/4.0.0-beta/index.json
+++ b/branch/4.0.0-beta/index.json
@@ -1,98 +1,13 @@
{
- "api/IPA.Config.Stores.IValueConverter.html": {
- "href": "api/IPA.Config.Stores.IValueConverter.html",
- "title": "Interface IValueConverter",
- "keywords": "Interface IValueConverter The base interface for a value converter for use by objects generated by Generated(Config, Boolean) . Namespace : IPA.Config.Stores Assembly : IPA.Loader.dll Syntax public interface IValueConverter Remarks The object returned from FromValue(Value, Object) , if fed into ToValue(Object, Object) , should return equivalent Value structures. Similarly, if the result of ToValue(Object, Object) is fed into FromValue(Value, Object) , the resulting object should be equivalent to the one passed to ToValue(Object, Object) . The parent parameter to ToValue(Object, Object) and FromValue(Value, Object) should be (ideally) the the top of the serialization tree, or some other generated object in that tree, rather than some arbitrary object in the middle that is not managed by the generatd config system. Converters do not need to perform null checks, as the serializer and deserializer will do that automatically. Properties | Improve this Doc View Source Type Gets the type that this IValueConverter handles. Declaration Type Type { get; } Property Value Type Description Type Methods | Improve this Doc View Source FromValue(Value, Object) Converts the given Value to the object type handled by this converter. Declaration object FromValue(Value value, object parent) Parameters Type Name Description Value value the Value to deserialize Object parent the object that will own the result Returns Type Description Object the deserialized object | Improve this Doc View Source ToValue(Object, Object) Converts the given object to a Value . Declaration Value ToValue(object obj, object parent) Parameters Type Name Description Object obj the object to convert Object parent the owning object of obj Returns Type Description Value a representation of obj as a Value structure Extension Methods ReflectionUtil.SetField(Object, String, Object) ReflectionUtil.SetField(T, String, Object) ReflectionUtil.GetField(Object, String) ReflectionUtil.GetField(U, String) ReflectionUtil.SetProperty(Object, String, Object) ReflectionUtil.SetProperty(T, String, Object) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(T, String, Object[]) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(U, String, Object[])"
- },
- "api/IPA.Config.Stores.GeneratedExtension.html": {
- "href": "api/IPA.Config.Stores.GeneratedExtension.html",
- "title": "Class GeneratedExtension",
- "keywords": "Class GeneratedExtension A class providing an extension for Config to make it easy to use generated config stores. Inheritance Object GeneratedExtension Inherited Members Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config.Stores Assembly : IPA.Loader.dll Syntax public static class GeneratedExtension Fields | Improve this Doc View Source AssemblyVisibilityTarget The name of the assembly that internals must be visible to to allow internal protection. Declaration public const string AssemblyVisibilityTarget = \"IPA.Config.Generated\" Field Value Type Description String Methods | Improve this Doc View Source Generated(Config, Boolean) Creates a generated IConfigStore of type T , registers it to the Config object, and returns it. This also forces a synchronous config load via LoadSync() if loadSync is true . Declaration public static T Generated(this Config cfg, bool loadSync = true) where T : class Parameters Type Name Description Config cfg the Config to register to Boolean loadSync whether to synchronously load the content, or trigger an async load Returns Type Description T a generated instance of T as a special IConfigStore Type Parameters Name Description T the type to wrap Remarks T must be a public non- sealed class. It can also be internal, but in that case, then your assembly must have the following attribute to allow the generated code to reference it. [assembly: InternalsVisibleTo(IPA.Config.Stores.GeneratedExtension.AssemblyVisibilityTarget)] Only fields and properties that are public or protected will be considered, and only properties where both the getter and setter are public or protected are considered. Any fields or properties with an IgnoreAttribute applied to them are also ignored. Having properties be virtual is not strictly necessary, however it allows the generated type to keep track of changes and lock around them so that the config will auto-save. All of the attributes in the IPA.Config.Stores.Attributes namespace are handled as described by them. If the T declares a public or protected, virtual method Changed() , then that method may be called to artificially signal to the runtime that the content of the object has changed. That method will also be called after the write locks are released when a property is set anywhere in the owning tree. This will only be called on the outermost generated object of the config structure, even if the change being signaled is somewhere deep into the tree. TODO: is this a good idea? Similarly, T can declare a public or protected, virtual method OnReload() , which will be called on the filesystem reader thread after the object has been repopulated with new data values. It will be called after the write lock for this object is released. This will only be called on the outermost generated object of the config structure. TODO: describe details of generated stores"
- },
- "api/IPA.Config.Stores.Converters.ListConverter-1.html": {
- "href": "api/IPA.Config.Stores.Converters.ListConverter-1.html",
- "title": "Class ListConverter",
- "keywords": "Class ListConverter A CollectionConverter for a List . Inheritance Object ValueConverter < List > CollectionConverter > ListConverter ListConverter Implements IValueConverter Inherited Members CollectionConverter>.BaseConverter CollectionConverter>.Create(Int32, Object) CollectionConverter>.PopulateFromValue(List, List, Object) CollectionConverter>.FromValue(Value, Object) CollectionConverter>.ToValue(List, Object) ValueConverter>.ToValue(List, Object) ValueConverter>.FromValue(Value, Object) ValueConverter>.IValueConverter.ToValue(Object, Object) ValueConverter>.IValueConverter.FromValue(Value, Object) ValueConverter>.IValueConverter.Type Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config.Stores.Converters Assembly : IPA.Loader.dll Syntax public class ListConverter : CollectionConverter>, IValueConverter Type Parameters Name Description T the element type of the List Constructors | Improve this Doc View Source ListConverter() Creates an ListConverter using the default converter for T . Declaration public ListConverter() See Also CollectionConverter() | Improve this Doc View Source ListConverter(ValueConverter) Creates an ListConverter using the specified underlying converter for values. Declaration public ListConverter(ValueConverter underlying) Parameters Type Name Description ValueConverter underlying the underlying ValueConverter to use for the values Methods | Improve this Doc View Source Create(Int32, Object) Creates a new List for deserialization. Declaration protected override List Create(int size, object parent) Parameters Type Name Description Int32 size the size to initialize it to Object parent the object that will own the new object Returns Type Description List the new List Overrides IPA.Config.Stores.Converters.CollectionConverter>.Create(System.Int32, System.Object) Implements IValueConverter Extension Methods ReflectionUtil.SetField(Object, String, Object) ReflectionUtil.SetField(T, String, Object) ReflectionUtil.GetField(Object, String) ReflectionUtil.GetField(U, String) ReflectionUtil.SetProperty(Object, String, Object) ReflectionUtil.SetProperty(T, String, Object) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(T, String, Object[]) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(U, String, Object[]) See Also CollectionConverter "
- },
- "api/IPA.Config.Stores.Converters.ISetConverter-2.html": {
- "href": "api/IPA.Config.Stores.Converters.ISetConverter-2.html",
- "title": "Class ISetConverter",
- "keywords": "Class ISetConverter An ISetConverter which default constructs a converter for use as the value converter. Inheritance Object ValueConverter < ISet > CollectionConverter > ISetConverter ISetConverter Implements IValueConverter Inherited Members ISetConverter.Create(Int32, Object) CollectionConverter>.BaseConverter CollectionConverter>.Create(Int32, Object) CollectionConverter>.PopulateFromValue(ISet, List, Object) CollectionConverter>.FromValue(Value, Object) CollectionConverter>.ToValue(ISet, Object) ValueConverter>.ToValue(ISet, Object) ValueConverter>.FromValue(Value, Object) ValueConverter>.IValueConverter.ToValue(Object, Object) ValueConverter>.IValueConverter.FromValue(Value, Object) ValueConverter>.IValueConverter.Type Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config.Stores.Converters Assembly : IPA.Loader.dll Syntax public sealed class ISetConverter : ISetConverter, IValueConverter where TConverter : ValueConverter, new() Type Parameters Name Description T the value type of the collection TConverter the type of the converter to use for T Constructors | Improve this Doc View Source ISetConverter() Creates an ISetConverter using a default constructed TConverter element type. Equivalent to calling ISetConverter(ValueConverter) with a default-constructed TConverter . Declaration public ISetConverter() See Also ISetConverter(ValueConverter) Implements IValueConverter Extension Methods ReflectionUtil.SetField(Object, String, Object) ReflectionUtil.SetField(T, String, Object) ReflectionUtil.GetField(Object, String) ReflectionUtil.GetField(U, String) ReflectionUtil.SetProperty(Object, String, Object) ReflectionUtil.SetProperty(T, String, Object) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(T, String, Object[]) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(U, String, Object[]) See Also ISetConverter "
- },
- "api/IPA.Config.Stores.Attributes.IgnoreAttribute.html": {
- "href": "api/IPA.Config.Stores.Attributes.IgnoreAttribute.html",
- "title": "Class IgnoreAttribute",
- "keywords": "Class IgnoreAttribute Causes a field or property in an object being wrapped by Generated(Config, Boolean) to be ignored during serialization and deserialization. Inheritance Object Attribute IgnoreAttribute Implements _Attribute Inherited Members Attribute.GetCustomAttributes(MemberInfo, Type) Attribute.GetCustomAttributes(MemberInfo, Type, Boolean) Attribute.GetCustomAttributes(MemberInfo) Attribute.GetCustomAttributes(MemberInfo, Boolean) Attribute.IsDefined(MemberInfo, Type) Attribute.IsDefined(MemberInfo, Type, Boolean) Attribute.GetCustomAttribute(MemberInfo, Type) Attribute.GetCustomAttribute(MemberInfo, Type, Boolean) Attribute.GetCustomAttributes(ParameterInfo) Attribute.GetCustomAttributes(ParameterInfo, Type) Attribute.GetCustomAttributes(ParameterInfo, Type, Boolean) Attribute.GetCustomAttributes(ParameterInfo, Boolean) Attribute.IsDefined(ParameterInfo, Type) Attribute.IsDefined(ParameterInfo, Type, Boolean) Attribute.GetCustomAttribute(ParameterInfo, Type) Attribute.GetCustomAttribute(ParameterInfo, Type, Boolean) Attribute.GetCustomAttributes(Module, Type) Attribute.GetCustomAttributes(Module) Attribute.GetCustomAttributes(Module, Boolean) Attribute.GetCustomAttributes(Module, Type, Boolean) Attribute.IsDefined(Module, Type) Attribute.IsDefined(Module, Type, Boolean) Attribute.GetCustomAttribute(Module, Type) Attribute.GetCustomAttribute(Module, Type, Boolean) Attribute.GetCustomAttributes(Assembly, Type) Attribute.GetCustomAttributes(Assembly, Type, Boolean) Attribute.GetCustomAttributes(Assembly) Attribute.GetCustomAttributes(Assembly, Boolean) Attribute.IsDefined(Assembly, Type) Attribute.IsDefined(Assembly, Type, Boolean) Attribute.GetCustomAttribute(Assembly, Type) Attribute.GetCustomAttribute(Assembly, Type, Boolean) Attribute.Equals(Object) Attribute.GetHashCode() Attribute.Match(Object) Attribute.IsDefaultAttribute() Attribute._Attribute.GetTypeInfoCount(UInt32) Attribute._Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) Attribute._Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) Attribute._Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) Attribute.TypeId Object.ToString() Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config.Stores.Attributes Assembly : IPA.Loader.dll Syntax [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field, AllowMultiple = false, Inherited = true)] public sealed class IgnoreAttribute : Attribute, _Attribute Implements System.Runtime.InteropServices._Attribute Extension Methods ReflectionUtil.SetField(Object, String, Object) ReflectionUtil.SetField(T, String, Object) ReflectionUtil.GetField(Object, String) ReflectionUtil.GetField(U, String) ReflectionUtil.SetProperty(Object, String, Object) ReflectionUtil.SetProperty(T, String, Object) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(T, String, Object[]) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(U, String, Object[])"
- },
- "api/IPA.Config.ModPrefs.html": {
- "href": "api/IPA.Config.ModPrefs.html",
- "title": "Class ModPrefs",
- "keywords": "Class ModPrefs Allows to get and set preferences for your mod. Inheritance Object ModPrefs Implements IModPrefs Inherited Members Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config Assembly : IPA.Loader.dll Syntax [Obsolete(\"Uses IniFile, which uses 16 bit system calls. Use BS Utils INI system for now.\")] public class ModPrefs : IModPrefs Constructors | Improve this Doc View Source ModPrefs(PluginMetadata) Constructs a ModPrefs object for the provide plugin. Declaration public ModPrefs(PluginMetadata plugin) Parameters Type Name Description PluginMetadata plugin the plugin to get the preferences file for Methods | Improve this Doc View Source GetBool(String, String, Boolean, Boolean) Gets a bool from the ini. Declaration public static bool GetBool(string section, string name, bool defaultValue = false, bool autoSave = false) Parameters Type Name Description String section Section of the key. String name Name of the key. Boolean defaultValue Value that should be used when no value is found. Boolean autoSave Whether or not the default value should be written if no value is found. Returns Type Description Boolean | Improve this Doc View Source GetFloat(String, String, Single, Boolean) Gets a float from the ini. Declaration public static float GetFloat(string section, string name, float defaultValue = 0F, bool autoSave = false) Parameters Type Name Description String section Section of the key. String name Name of the key. Single defaultValue Value that should be used when no value is found. Boolean autoSave Whether or not the default value should be written if no value is found. Returns Type Description Single | Improve this Doc View Source GetInt(String, String, Int32, Boolean) Gets an int from the ini. Declaration public static int GetInt(string section, string name, int defaultValue = 0, bool autoSave = false) Parameters Type Name Description String section Section of the key. String name Name of the key. Int32 defaultValue Value that should be used when no value is found. Boolean autoSave Whether or not the default value should be written if no value is found. Returns Type Description Int32 | Improve this Doc View Source GetString(String, String, String, Boolean) Gets a string from the ini. Declaration public static string GetString(string section, string name, string defaultValue = \"\", bool autoSave = false) Parameters Type Name Description String section Section of the key. String name Name of the key. String defaultValue Value that should be used when no value is found. Boolean autoSave Whether or not the default value should be written if no value is found. Returns Type Description String | Improve this Doc View Source HasKey(String, String) Checks whether or not a key exists in the ini. Declaration public static bool HasKey(string section, string name) Parameters Type Name Description String section Section of the key. String name Name of the key. Returns Type Description Boolean | Improve this Doc View Source SetBool(String, String, Boolean) Sets a bool in the ini. Declaration public static void SetBool(string section, string name, bool value) Parameters Type Name Description String section Section of the key. String name Name of the key. Boolean value Value that should be written. | Improve this Doc View Source SetFloat(String, String, Single) Sets a float in the ini. Declaration public static void SetFloat(string section, string name, float value) Parameters Type Name Description String section Section of the key. String name Name of the key. Single value Value that should be written. | Improve this Doc View Source SetInt(String, String, Int32) Sets an int in the ini. Declaration public static void SetInt(string section, string name, int value) Parameters Type Name Description String section Section of the key. String name Name of the key. Int32 value Value that should be written. | Improve this Doc View Source SetString(String, String, String) Sets a string in the ini. Declaration public static void SetString(string section, string name, string value) Parameters Type Name Description String section Section of the key. String name Name of the key. String value Value that should be written. Explicit Interface Implementations | Improve this Doc View Source IModPrefs.GetBool(String, String, Boolean, Boolean) Declaration bool IModPrefs.GetBool(string section, string name, bool defaultValue, bool autoSave) Parameters Type Name Description String section String name Boolean defaultValue Boolean autoSave Returns Type Description Boolean | Improve this Doc View Source IModPrefs.GetFloat(String, String, Single, Boolean) Declaration float IModPrefs.GetFloat(string section, string name, float defaultValue, bool autoSave) Parameters Type Name Description String section String name Single defaultValue Boolean autoSave Returns Type Description Single | Improve this Doc View Source IModPrefs.GetInt(String, String, Int32, Boolean) Declaration int IModPrefs.GetInt(string section, string name, int defaultValue, bool autoSave) Parameters Type Name Description String section String name Int32 defaultValue Boolean autoSave Returns Type Description Int32 | Improve this Doc View Source IModPrefs.GetString(String, String, String, Boolean) Declaration string IModPrefs.GetString(string section, string name, string defaultValue, bool autoSave) Parameters Type Name Description String section String name String defaultValue Boolean autoSave Returns Type Description String | Improve this Doc View Source IModPrefs.HasKey(String, String) Declaration bool IModPrefs.HasKey(string section, string name) Parameters Type Name Description String section String name Returns Type Description Boolean | Improve this Doc View Source IModPrefs.SetBool(String, String, Boolean) Declaration void IModPrefs.SetBool(string section, string name, bool value) Parameters Type Name Description String section String name Boolean value | Improve this Doc View Source IModPrefs.SetFloat(String, String, Single) Declaration void IModPrefs.SetFloat(string section, string name, float value) Parameters Type Name Description String section String name Single value | Improve this Doc View Source IModPrefs.SetInt(String, String, Int32) Declaration void IModPrefs.SetInt(string section, string name, int value) Parameters Type Name Description String section String name Int32 value | Improve this Doc View Source IModPrefs.SetString(String, String, String) Declaration void IModPrefs.SetString(string section, string name, string value) Parameters Type Name Description String section String name String value Implements IModPrefs Extension Methods ReflectionUtil.SetField(Object, String, Object) ReflectionUtil.SetField(T, String, Object) ReflectionUtil.GetField(Object, String) ReflectionUtil.GetField(U, String) ReflectionUtil.SetProperty(Object, String, Object) ReflectionUtil.SetProperty(T, String, Object) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(T, String, Object[]) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(U, String, Object[])"
- },
- "api/IPA.Config.IModPrefs.html": {
- "href": "api/IPA.Config.IModPrefs.html",
- "title": "Interface IModPrefs",
- "keywords": "Interface IModPrefs Allows to get and set preferences for your mod. Namespace : IPA.Config Assembly : IPA.Loader.dll Syntax [Obsolete(\"Uses IniFile, which uses 16 bit system calls. Use BS Utils INI system for now.\")] public interface IModPrefs Methods | Improve this Doc View Source GetBool(String, String, Boolean, Boolean) Gets a bool from the ini. Declaration bool GetBool(string section, string name, bool defaultValue = false, bool autoSave = false) Parameters Type Name Description String section Section of the key. String name Name of the key. Boolean defaultValue Value that should be used when no value is found. Boolean autoSave Whether or not the default value should be written if no value is found. Returns Type Description Boolean | Improve this Doc View Source GetFloat(String, String, Single, Boolean) Gets a float from the ini. Declaration float GetFloat(string section, string name, float defaultValue = 0F, bool autoSave = false) Parameters Type Name Description String section Section of the key. String name Name of the key. Single defaultValue Value that should be used when no value is found. Boolean autoSave Whether or not the default value should be written if no value is found. Returns Type Description Single | Improve this Doc View Source GetInt(String, String, Int32, Boolean) Gets an int from the ini. Declaration int GetInt(string section, string name, int defaultValue = 0, bool autoSave = false) Parameters Type Name Description String section Section of the key. String name Name of the key. Int32 defaultValue Value that should be used when no value is found. Boolean autoSave Whether or not the default value should be written if no value is found. Returns Type Description Int32 | Improve this Doc View Source GetString(String, String, String, Boolean) Gets a string from the ini. Declaration string GetString(string section, string name, string defaultValue = \"\", bool autoSave = false) Parameters Type Name Description String section Section of the key. String name Name of the key. String defaultValue Value that should be used when no value is found. Boolean autoSave Whether or not the default value should be written if no value is found. Returns Type Description String | Improve this Doc View Source HasKey(String, String) Checks whether or not a key exists in the ini. Declaration bool HasKey(string section, string name) Parameters Type Name Description String section Section of the key. String name Name of the key. Returns Type Description Boolean | Improve this Doc View Source SetBool(String, String, Boolean) Sets a bool in the ini. Declaration void SetBool(string section, string name, bool value) Parameters Type Name Description String section Section of the key. String name Name of the key. Boolean value Value that should be written. | Improve this Doc View Source SetFloat(String, String, Single) Sets a float in the ini. Declaration void SetFloat(string section, string name, float value) Parameters Type Name Description String section Section of the key. String name Name of the key. Single value Value that should be written. | Improve this Doc View Source SetInt(String, String, Int32) Sets an int in the ini. Declaration void SetInt(string section, string name, int value) Parameters Type Name Description String section Section of the key. String name Name of the key. Int32 value Value that should be written. | Improve this Doc View Source SetString(String, String, String) Sets a string in the ini. Declaration void SetString(string section, string name, string value) Parameters Type Name Description String section Section of the key. String name Name of the key. String value Value that should be written. Extension Methods ReflectionUtil.SetField(Object, String, Object) ReflectionUtil.SetField(T, String, Object) ReflectionUtil.GetField(Object, String) ReflectionUtil.GetField(U, String) ReflectionUtil.SetProperty(Object, String, Object) ReflectionUtil.SetProperty(T, String, Object) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(T, String, Object[]) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(U, String, Object[])"
- },
- "api/IPA.Config.Data.Value.html": {
- "href": "api/IPA.Config.Data.Value.html",
- "title": "Class Value",
- "keywords": "Class Value A base value type for config data abstract representations, to be serialized with an IConfigProvider . If a Value is null , then that represents just that: a null in whatever serialization is being used. Also contains factory functions for all derived types. Inheritance Object Value Boolean FloatingPoint Integer List Map Text Inherited Members Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config.Data Assembly : IPA.Loader.dll Syntax public abstract class Value Methods | Improve this Doc View Source Bool(Boolean) Creates a new Boolean wrapping a Boolean . Declaration public static Boolean Bool(bool val) Parameters Type Name Description Boolean val the value to wrap Returns Type Description Boolean a Boolean wrapping val See Also From(Boolean) | Improve this Doc View Source Float(Decimal) Creates a new FloatingPoint wrapping a Decimal . Declaration public static FloatingPoint Float(decimal val) Parameters Type Name Description Decimal val the value to wrap Returns Type Description FloatingPoint a FloatingPoint wrapping val See Also From(Decimal) | Improve this Doc View Source From(Boolean) Creates a new Value wrapping a Boolean . Declaration public static Boolean From(bool val) Parameters Type Name Description Boolean val the value to wrap Returns Type Description Boolean a Boolean wrapping val See Also Bool(Boolean) | Improve this Doc View Source From(IDictionary) Creates a new Map holding the content of an IDictionary of String to Value . Declaration public static Map From(IDictionary vals) Parameters Type Name Description IDictionary < String , Value > vals the dictionary of Value s to initialize the Map wtih Returns Type Description Map a Map containing the content of vals See Also Map() From(IEnumerable>) | Improve this Doc View Source From(IEnumerable) Creates a new List holding the content of an IEnumerable of Value . Declaration public static List From(IEnumerable vals) Parameters Type Name Description IEnumerable < Value > vals the Value s to initialize the List with Returns Type Description List a List containing the content of vals See Also List() | Improve this Doc View Source From(IEnumerable>) Creates a new Map holding the content of an IEnumerable of KeyValuePair of String to Value . Declaration public static Map From(IEnumerable> vals) Parameters Type Name Description IEnumerable < KeyValuePair < String , Value >> vals the enumerable of KeyValuePair of name to Value Returns Type Description Map a Map containing the content of vals See Also Map() From(IDictionary) | Improve this Doc View Source From(Decimal) Creates a new Value wrapping a Double . Declaration public static FloatingPoint From(decimal val) Parameters Type Name Description Decimal val the value to wrap Returns Type Description FloatingPoint a FloatingPoint wrapping val See Also Float(Decimal) | Improve this Doc View Source From(Int64) Creates a new Value wrapping a Int64 . Declaration public static Integer From(long val) Parameters Type Name Description Int64 val the value to wrap Returns Type Description Integer a Integer wrapping val See Also Integer(Int64) | Improve this Doc View Source From(String) Creates a new Value representing a String . Declaration public static Text From(string val) Parameters Type Name Description String val the value to wrap Returns Type Description Text a Text wrapping val See Also Text(String) | Improve this Doc View Source Integer(Int64) Creates a new Integer wrapping a Int64 . Declaration public static Integer Integer(long val) Parameters Type Name Description Int64 val the value to wrap Returns Type Description Integer a Integer wrapping val See Also From(Int64) | Improve this Doc View Source List() Creates an empty List() . Declaration public static List List() Returns Type Description List an empty List() See Also From(IEnumerable) | Improve this Doc View Source Map() Creates an empty Map() . Declaration public static Map Map() Returns Type Description Map an empty Map() See Also From(IDictionary) From(IEnumerable>) | Improve this Doc View Source Null() Creates a Null Value . Declaration public static Value Null() Returns Type Description Value null | Improve this Doc View Source Text(String) Creates a new Text object wrapping a String . Declaration public static Text Text(string val) Parameters Type Name Description String val the value to wrap Returns Type Description Text a Text wrapping val See Also From(String) | Improve this Doc View Source ToString() Converts this Value into a human-readable format. Declaration public abstract override string ToString() Returns Type Description String a human-readable string containing the value provided Overrides Object.ToString() Extension Methods ReflectionUtil.SetField(Object, String, Object) ReflectionUtil.SetField(T, String, Object) ReflectionUtil.GetField(Object, String) ReflectionUtil.GetField(U, String) ReflectionUtil.SetProperty(Object, String, Object) ReflectionUtil.SetProperty(T, String, Object) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(T, String, Object[]) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(U, String, Object[])"
- },
- "api/IPA.Config.Data.Integer.html": {
- "href": "api/IPA.Config.Data.Integer.html",
- "title": "Class Integer",
- "keywords": "Class Integer A Value representing an integer. This may hold a Int64 's worth of data. Inheritance Object Value Integer Inherited Members Value.Null() Value.List() Value.Map() Value.From(String) Value.Text(String) Value.From(Int64) Value.Integer(Int64) Value.From(Decimal) Value.Float(Decimal) Value.From(Boolean) Value.Bool(Boolean) Value.From(IEnumerable) Value.From(IDictionary) Value.From(IEnumerable>) Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config.Data Assembly : IPA.Loader.dll Syntax public sealed class Integer : Value Properties | Improve this Doc View Source Value The actual value of the Integer object. Declaration public long Value { get; set; } Property Value Type Description Int64 Methods | Improve this Doc View Source AsFloat() Coerces this Integer into a FloatingPoint . Declaration public FloatingPoint AsFloat() Returns Type Description FloatingPoint a FloatingPoint representing the closest approximation of Value | Improve this Doc View Source ToString() Converts this Value into a human-readable format. Declaration public override string ToString() Returns Type Description String the result of Value.ToString() Overrides Value.ToString() Extension Methods ReflectionUtil.SetField(Object, String, Object) ReflectionUtil.SetField(T, String, Object) ReflectionUtil.GetField(Object, String) ReflectionUtil.GetField(U, String) ReflectionUtil.SetProperty(Object, String, Object) ReflectionUtil.SetProperty(T, String, Object) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(T, String, Object[]) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(U, String, Object[])"
- },
- "api/IPA.Config.Config.html": {
- "href": "api/IPA.Config.Config.html",
- "title": "Class Config",
- "keywords": "Class Config A class to handle updating ConfigProviders automatically Inheritance Object Config Inherited Members Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config Assembly : IPA.Loader.dll Syntax public class Config Properties | Improve this Doc View Source Name Gets the name associated with this Config object. Declaration public string Name { get; } Property Value Type Description String | Improve this Doc View Source Provider Gets the IConfigProvider associated with this Config object. Declaration public IConfigProvider Provider { get; } Property Value Type Description IConfigProvider Methods | Improve this Doc View Source GetConfigFor(String, String[]) Gets a Config object using the specified list of preferred config types. Declaration public static Config GetConfigFor(string configName, params string[] extensions) Parameters Type Name Description String configName the name of the mod for this config String [] extensions the preferred config types to try to get Returns Type Description Config a Config using the requested format, or of type JSON. | Improve this Doc View Source LoadAsync() Forces an asynchronous load from disk. Declaration public Task LoadAsync() Returns Type Description Task | Improve this Doc View Source LoadSync() Forces a synchronous load from disk. Declaration public void LoadSync() | Improve this Doc View Source Register(Type) Registers a IConfigProvider to use for configs. Declaration public static void Register(Type type) Parameters Type Name Description Type type the type to register | Improve this Doc View Source Register() Registers a IConfigProvider to use for configs. Declaration public static void Register() where T : IConfigProvider Type Parameters Name Description T the type to register | Improve this Doc View Source SetStore(IConfigStore) Sets this object's IConfigStore . Can only be called once. Declaration public void SetStore(IConfigStore store) Parameters Type Name Description IConfigStore store the IConfigStore to add to this instance Exceptions Type Condition InvalidOperationException If this was called before. Extension Methods ReflectionUtil.SetField(Object, String, Object) ReflectionUtil.SetField(T, String, Object) ReflectionUtil.GetField(Object, String) ReflectionUtil.GetField(U, String) ReflectionUtil.SetProperty(Object, String, Object) ReflectionUtil.SetProperty(T, String, Object) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(T, String, Object[]) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(U, String, Object[]) GeneratedExtension.Generated(Config, Boolean)"
- },
- "api/IPA.Config.Config.NameAttribute.html": {
- "href": "api/IPA.Config.Config.NameAttribute.html",
- "title": "Class Config.NameAttribute",
- "keywords": "Class Config.NameAttribute Specifies a preferred config name, instead of using the plugin's name. Inheritance Object Attribute Config.NameAttribute Implements _Attribute Inherited Members Attribute.GetCustomAttributes(MemberInfo, Type) Attribute.GetCustomAttributes(MemberInfo, Type, Boolean) Attribute.GetCustomAttributes(MemberInfo) Attribute.GetCustomAttributes(MemberInfo, Boolean) Attribute.IsDefined(MemberInfo, Type) Attribute.IsDefined(MemberInfo, Type, Boolean) Attribute.GetCustomAttribute(MemberInfo, Type) Attribute.GetCustomAttribute(MemberInfo, Type, Boolean) Attribute.GetCustomAttributes(ParameterInfo) Attribute.GetCustomAttributes(ParameterInfo, Type) Attribute.GetCustomAttributes(ParameterInfo, Type, Boolean) Attribute.GetCustomAttributes(ParameterInfo, Boolean) Attribute.IsDefined(ParameterInfo, Type) Attribute.IsDefined(ParameterInfo, Type, Boolean) Attribute.GetCustomAttribute(ParameterInfo, Type) Attribute.GetCustomAttribute(ParameterInfo, Type, Boolean) Attribute.GetCustomAttributes(Module, Type) Attribute.GetCustomAttributes(Module) Attribute.GetCustomAttributes(Module, Boolean) Attribute.GetCustomAttributes(Module, Type, Boolean) Attribute.IsDefined(Module, Type) Attribute.IsDefined(Module, Type, Boolean) Attribute.GetCustomAttribute(Module, Type) Attribute.GetCustomAttribute(Module, Type, Boolean) Attribute.GetCustomAttributes(Assembly, Type) Attribute.GetCustomAttributes(Assembly, Type, Boolean) Attribute.GetCustomAttributes(Assembly) Attribute.GetCustomAttributes(Assembly, Boolean) Attribute.IsDefined(Assembly, Type) Attribute.IsDefined(Assembly, Type, Boolean) Attribute.GetCustomAttribute(Assembly, Type) Attribute.GetCustomAttribute(Assembly, Type, Boolean) Attribute.Equals(Object) Attribute.GetHashCode() Attribute.Match(Object) Attribute.IsDefaultAttribute() Attribute._Attribute.GetTypeInfoCount(UInt32) Attribute._Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) Attribute._Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) Attribute._Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) Attribute.TypeId Object.ToString() Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config Assembly : IPA.Loader.dll Syntax [AttributeUsage(AttributeTargets.Parameter)] public sealed class NameAttribute : Attribute, _Attribute Constructors | Improve this Doc View Source NameAttribute(String) Constructs the attribute with a specific name. Declaration public NameAttribute(string name) Parameters Type Name Description String name the name to use for the config. Properties | Improve this Doc View Source Name The name to use for the config. Declaration public string Name { get; } Property Value Type Description String the name to use for the config Implements System.Runtime.InteropServices._Attribute Extension Methods ReflectionUtil.SetField(Object, String, Object) ReflectionUtil.SetField(T, String, Object) ReflectionUtil.GetField(Object, String) ReflectionUtil.GetField(U, String) ReflectionUtil.SetProperty(Object, String, Object) ReflectionUtil.SetProperty(T, String, Object) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(T, String, Object[]) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(U, String, Object[])"
- },
- "api/BSIPA_ModList.UI.ViewControllers.html": {
- "href": "api/BSIPA_ModList.UI.ViewControllers.html",
- "title": "",
- "keywords": "Classes MarkdownView A UI component that renders CommonMark Markdown in-game."
- },
- "api/IPA.html": {
- "href": "api/IPA.html",
- "title": "",
- "keywords": "Classes InitAttribute OnDisableAttribute OnEnableAttribute OnExitAttribute OnStartAttribute PluginAttribute Interfaces IDisablablePlugin Provides methods to allow runtime disabling of a plugin. IEnhancedPlugin An enhanced version of a standard BeatSaber plugin. IPlugin Interface for BSIPA plugins. Every class that implements this will be loaded if the DLL is placed at /Plugins. Enums RuntimeOptions"
- },
- "api/IPA.Utilities.html": {
- "href": "api/IPA.Utilities.html",
- "title": "",
- "keywords": "Classes AlmostVersion A type that wraps so that the string of the version is stored when the string is not a valid . AlmostVersionConverter A ValueConverter for AlmostVersion s. BeatSaber Provides some basic utility methods and properties of Beat Saber CriticalSection Provides utilities for managing various critical sections. EnumerableExtensions Extensions for IEnumerable that don't currently exist in System.Linq . Extensions A class providing various extension methods. Ref Utilities to create Ref using type inference. Ref A class to store a reference for passing to methods which cannot take ref parameters. ReflectionUtil A utility class providing reflection helper methods. Utils A class providing static utility functions that in any other language would just exist . Enums AlmostVersion.StoredAs Represents a storage type of either parsed object or raw String . BeatSaber.Release The different types of releases of the game."
- },
- "api/IPA.Utilities.Utils.html": {
- "href": "api/IPA.Utilities.Utils.html",
- "title": "Class Utils",
- "keywords": "Class Utils A class providing static utility functions that in any other language would just exist . Inheritance Object Utils Inherited Members Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Utilities Assembly : IPA.Loader.dll Syntax public static class Utils Properties | Improve this Doc View Source CanUseDateTimeNowSafely Whether you can safely use Now without Mono throwing a fit. Declaration public static bool CanUseDateTimeNowSafely { get; } Property Value Type Description Boolean true if you can use Now safely, false otherwise Methods | Improve this Doc View Source ByteArrayToString(Byte[]) Converts a byte array to a hex string. Declaration public static string ByteArrayToString(byte[] ba) Parameters Type Name Description Byte [] ba the byte array Returns Type Description String the hex form of the array | Improve this Doc View Source CopyAll(DirectoryInfo, DirectoryInfo, String, Func) Copies all files from source to target . Declaration public static void CopyAll(DirectoryInfo source, DirectoryInfo target, string appendFileName = \"\", Func onCopyException = null) Parameters Type Name Description DirectoryInfo source the source directory DirectoryInfo target the destination directory String appendFileName the filename of the file to append together Func < Exception , FileInfo , Boolean > onCopyException a delegate called when there is an error copying. Return true to keep going. | Improve this Doc View Source CurrentTime() Gets the current DateTime if supported, otherwise, if Mono would throw a fit, returns MinValue plus some value, such that each time it is called the value will be greater than the previous result. Not suitable for timing. Declaration public static DateTime CurrentTime() Returns Type Description DateTime the current DateTime if supported, otherwise some indeterminant increasing value. | Improve this Doc View Source GetRelativePath(String, String) Gets a path relative to the provided folder. Declaration public static string GetRelativePath(string file, string folder) Parameters Type Name Description String file the file to relativize String folder the source folder Returns Type Description String a path to get from folder to file | Improve this Doc View Source StringToByteArray(String) Converts a hex string to a byte array. Declaration public static byte[] StringToByteArray(string hex) Parameters Type Name Description String hex the hex stream Returns Type Description Byte [] the corresponding byte array | Improve this Doc View Source UnsafeCompare(Byte[], Byte[]) Uses unsafe code to compare 2 byte arrays quickly. Declaration public static bool UnsafeCompare(byte[] a1, byte[] a2) Parameters Type Name Description Byte [] a1 array 1 Byte [] a2 array 2 Returns Type Description Boolean whether or not they are byte-for-byte equal | Improve this Doc View Source VersionCompareNoPrerelease(SemVer.Version, SemVer.Version) Compares a pair of s ignoring both the prerelease and build fields. Declaration public static int VersionCompareNoPrerelease(SemVer.Version l, SemVer.Version r) Parameters Type Name Description SemVer.Version l the left value SemVer.Version r the right value Returns Type Description Int32 < 0 if l is less than r, 0 if they are equal in the numeric portion, or > 0 if l is greater than r"
- },
- "api/IPA.Utilities.ReflectionUtil.html": {
- "href": "api/IPA.Utilities.ReflectionUtil.html",
- "title": "Class ReflectionUtil",
- "keywords": "Class ReflectionUtil A utility class providing reflection helper methods. Inheritance Object ReflectionUtil Inherited Members Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Utilities Assembly : IPA.Loader.dll Syntax public static class ReflectionUtil Methods | Improve this Doc View Source CopyComponent(Component, Type, GameObject, Type) Copies a component original to a component of overridingType on the destination UnityEngine.GameObject . Declaration public static Component CopyComponent(this Component original, Type overridingType, GameObject destination, Type originalTypeOverride = null) Parameters Type Name Description UnityEngine.Component original the original component Type overridingType the new component's type UnityEngine.GameObject destination the destination GameObject Type originalTypeOverride overrides the source component type (for example, to a superclass) Returns Type Description UnityEngine.Component the copied component | Improve this Doc View Source CopyComponent(Component, GameObject, Type) A generic version of CopyComponent(Component, Type, GameObject, Type) . Declaration public static T CopyComponent(this Component original, GameObject destination, Type originalTypeOverride = null) where T : Component Parameters Type Name Description UnityEngine.Component original the original component UnityEngine.GameObject destination the destination game object Type originalTypeOverride overrides the source component type (for example, to a superclass) Returns Type Description T the copied component Type Parameters Name Description T the overriding type See Also CopyComponent(Component, Type, GameObject, Type) | Improve this Doc View Source GetField(Object, String) Gets the value of a field. Declaration public static T GetField(this object obj, string fieldName) Parameters Type Name Description Object obj the object instance to pull from String fieldName the name of the field to read Returns Type Description T the value of the field Type Parameters Name Description T the type of the field (result casted) Exceptions Type Condition ArgumentException if fieldName does not exist on the runtime type of obj | Improve this Doc View Source GetField(U, String) Gets the value of a field. Declaration public static T GetField(this U obj, string fieldName) Parameters Type Name Description U obj the object instance to pull from String fieldName the name of the field to read Returns Type Description T the value of the field Type Parameters Name Description T the type of the field (result casted) U the type to get the field from Exceptions Type Condition ArgumentException if fieldName does not exist on U | Improve this Doc View Source InvokeMethod(Object, String, Object[]) Invokes a method on an object. Declaration public static object InvokeMethod(this object obj, string methodName, params object[] methodArgs) Parameters Type Name Description Object obj the object to call from String methodName the method name Object [] methodArgs the method arguments Returns Type Description Object the return value Exceptions Type Condition ArgumentException if methodName does not exist on the runtime type of obj | Improve this Doc View Source InvokeMethod(T, String, Object[]) Invokes a method from T on an object. Declaration public static object InvokeMethod(this T obj, string methodName, params object[] args) Parameters Type Name Description T obj the object instance String methodName the method's name Object [] args the method arguments Returns Type Description Object the return value Type Parameters Name Description T the type to search for the method on Exceptions Type Condition ArgumentException if methodName does not exist on T | Improve this Doc View Source InvokeMethod(Object, String, Object[]) Invokes a method. Declaration public static T InvokeMethod(this object obj, string methodName, params object[] methodArgs) Parameters Type Name Description Object obj the object instance String methodName the method name to call Object [] methodArgs the method's arguments Returns Type Description T the return value Type Parameters Name Description T the return type Exceptions Type Condition ArgumentException if methodName does not exist on the runtime type of obj See Also InvokeMethod(Object, String, Object[]) | Improve this Doc View Source InvokeMethod(U, String, Object[]) Invokes a method from U on an object. Declaration public static T InvokeMethod(this U obj, string methodName, params object[] methodArgs) Parameters Type Name Description U obj the object instance String methodName the method name to call Object [] methodArgs the method's arguments Returns Type Description T the return value Type Parameters Name Description T the return type U the type to search for the method on Exceptions Type Condition ArgumentException if methodName does not exist on U See Also InvokeMethod(T, String, Object[]) | Improve this Doc View Source SetField(Object, String, Object) Sets a field on the target object. Declaration public static void SetField(this object obj, string fieldName, object value) Parameters Type Name Description Object obj the object instance String fieldName the field to set Object value the value to set it to Exceptions Type Condition ArgumentException if fieldName does not exist on the runtime type of obj | Improve this Doc View Source SetField(T, String, Object) Sets a field on the target object, as gotten from T . Declaration public static void SetField(this T obj, string fieldName, object value) Parameters Type Name Description T obj the object instance String fieldName the field to set Object value the value to set it to Type Parameters Name Description T the type to get the field from Exceptions Type Condition ArgumentException if fieldName does not exist on T | Improve this Doc View Source SetProperty(Object, String, Object) Sets a property on the target object. Declaration public static void SetProperty(this object obj, string propertyName, object value) Parameters Type Name Description Object obj the target object instance String propertyName the name of the property Object value the value to set it to Exceptions Type Condition ArgumentException if propertyName does not exist on the runtime type of obj | Improve this Doc View Source SetProperty(T, String, Object) Sets a property on the target object, as gotten from T Declaration public static void SetProperty(this T obj, string propertyName, object value) Parameters Type Name Description T obj the object instance String propertyName the property to set Object value the value to set it to Type Parameters Name Description T the type to get the property from Exceptions Type Condition ArgumentException if propertyName does not exist on T"
- },
- "api/IPA.Utilities.Ref.html": {
- "href": "api/IPA.Utilities.Ref.html",
- "title": "Class Ref",
- "keywords": "Class Ref Utilities to create Ref using type inference. Inheritance Object Ref Inherited Members Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Utilities Assembly : IPA.Loader.dll Syntax public static class Ref Methods | Improve this Doc View Source Create(T) Creates a Ref . Declaration public static Ref Create(T val) Parameters Type Name Description T val the default value. Returns Type Description Ref the new Ref . Type Parameters Name Description T the type to reference."
- },
- "api/IPA.Utilities.Ref-1.html": {
- "href": "api/IPA.Utilities.Ref-1.html",
- "title": "Class Ref",
- "keywords": "Class Ref A class to store a reference for passing to methods which cannot take ref parameters. Inheritance Object Ref Implements IComparable IComparable < Ref > Inherited Members Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Utilities Assembly : IPA.Loader.dll Syntax public class Ref : IComparable, IComparable> Type Parameters Name Description T the type of the value Constructors | Improve this Doc View Source Ref(T) Constructor. Declaration public Ref(T reference) Parameters Type Name Description T reference the initial value of the reference Properties | Improve this Doc View Source Error An exception that was generated while creating the value. Declaration public Exception Error { get; set; } Property Value Type Description Exception the error held in this Ref | Improve this Doc View Source Value The value of the reference Declaration public T Value { get; set; } Property Value Type Description T the value wrapped by this Ref Methods | Improve this Doc View Source CompareTo(T) Compares the wrapped object to the other object. Declaration public int CompareTo(T other) Parameters Type Name Description T other the object to compare to Returns Type Description Int32 the value of the comparison | Improve this Doc View Source CompareTo(Ref) Compares the wrapped object to the other wrapped object. Declaration public int CompareTo(Ref other) Parameters Type Name Description Ref other the wrapped object to compare to Returns Type Description Int32 the value of the comparison | Improve this Doc View Source Verify() Throws error if one was set. Declaration public void Verify() Operators | Improve this Doc View Source Implicit(T to Ref) Converts a value T to a reference to that object. Will overwrite the reference in the left hand expression if there is one. Declaration public static implicit operator Ref(T toConvert) Parameters Type Name Description T toConvert the value to wrap in the Ref Returns Type Description Ref the Ref wrapping the value | Improve this Doc View Source Implicit(Ref to T) Converts to referenced type, returning the stored reference. Declaration public static implicit operator T(Ref self) Parameters Type Name Description Ref self the object to be de-referenced Returns Type Description T the value referenced by the object Implements System.IComparable System.IComparable Extension Methods ReflectionUtil.SetField(Object, String, Object) ReflectionUtil.SetField(T, String, Object) ReflectionUtil.GetField(Object, String) ReflectionUtil.GetField(U, String) ReflectionUtil.SetProperty(Object, String, Object) ReflectionUtil.SetProperty(T, String, Object) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(T, String, Object[]) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(U, String, Object[])"
+ "api/IPA.Utilities.Async.Synchronization.ReaderWriterLockSlimUpgradableReadLocker.html": {
+ "href": "api/IPA.Utilities.Async.Synchronization.ReaderWriterLockSlimUpgradableReadLocker.html",
+ "title": "Struct Synchronization.ReaderWriterLockSlimUpgradableReadLocker",
+ "keywords": "Struct Synchronization.ReaderWriterLockSlimUpgradableReadLocker A locker for an upgradable read lock on a ReaderWriterLockSlim that automatically releases when it is disposed. Create this with LockReadUpgradable(ReaderWriterLockSlim) . Implements IDisposable Inherited Members ValueType.Equals(Object) ValueType.GetHashCode() ValueType.ToString() Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetType() Namespace : IPA.Utilities.Async Assembly : IPA.Loader.dll Syntax public struct ReaderWriterLockSlimUpgradableReadLocker : IDisposable Methods | Improve this Doc View Source Upgrade() Creates a locker for a write lock on the ReaderWriterLockSlim associated with this locker, upgrading the current thread's lock. Declaration public Synchronization.ReaderWriterLockSlimWriteLocker Upgrade() Returns Type Description Synchronization.ReaderWriterLockSlimWriteLocker a locker for the new write lock See Also Synchronization Explicit Interface Implementations | Improve this Doc View Source IDisposable.Dispose() Declaration void IDisposable.Dispose() Implements System.IDisposable Extension Methods ReflectionUtil.SetField(Object, String, Object) ReflectionUtil.SetField(T, String, Object) ReflectionUtil.GetField(Object, String) ReflectionUtil.GetField(U, String) ReflectionUtil.SetProperty(Object, String, Object) ReflectionUtil.SetProperty(T, String, Object) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(T, String, Object[]) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(U, String, Object[]) See Also Synchronization LockReadUpgradable(ReaderWriterLockSlim)"
},
- "api/IPA.Utilities.Extensions.html": {
- "href": "api/IPA.Utilities.Extensions.html",
- "title": "Class Extensions",
- "keywords": "Class Extensions A class providing various extension methods. Inheritance Object Extensions Inherited Members Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Utilities Assembly : IPA.Loader.dll Syntax public static class Extensions Methods | Improve this Doc View Source GetDefault(Type) Gets the default value for a given Type . Declaration public static object GetDefault(this Type type) Parameters Type Name Description Type type the Type to get the default value for Returns Type Description Object the default value of type | Improve this Doc View Source IsSubPathOf(String, String) Returns true if path starts with the path baseDirPath . The comparison is case-insensitive, handles / and \\ slashes as folder separators and only matches if the base dir folder name is matched exactly (\"c:\\foobar\\file.txt\" is not a sub path of \"c:\\foo\"). Declaration public static bool IsSubPathOf(this string path, string baseDirPath) Parameters Type Name Description String path String baseDirPath Returns Type Description Boolean | Improve this Doc View Source Right(String, Int32) Gets the rightmost length characters from a string. Declaration public static string Right(this string value, int length) Parameters Type Name Description String value The string to retrieve the substring from. Int32 length The number of characters to retrieve. Returns Type Description String The substring. | Improve this Doc View Source Unwrap(Nullable) Unwraps a Nullable where T is Boolean such that if the value is null, it gives false . Declaration public static bool Unwrap(this bool? self) Parameters Type Name Description Nullable < Boolean > self the bool? to unwrap Returns Type Description Boolean the unwrapped value, or false if it was null | Improve this Doc View Source WithEnding(String, String) Returns str with the minimal concatenation of ending (starting from end) that results in satisfying .EndsWith(ending). Declaration public static string WithEnding(this string str, string ending) Parameters Type Name Description String str String ending Returns Type Description String Examples \"hel\".WithEnding(\"llo\") returns \"hello\", which is the result of \"hel\" + \"lo\"."
+ "api/IPA.Utilities.Async.Synchronization.ReaderWriterLockSlimReadLocker.html": {
+ "href": "api/IPA.Utilities.Async.Synchronization.ReaderWriterLockSlimReadLocker.html",
+ "title": "Struct Synchronization.ReaderWriterLockSlimReadLocker",
+ "keywords": "Struct Synchronization.ReaderWriterLockSlimReadLocker A locker for a read lock on a ReaderWriterLockSlim that automatically releases when it is disposed. Create this with LockRead(ReaderWriterLockSlim) . Implements IDisposable Inherited Members ValueType.Equals(Object) ValueType.GetHashCode() ValueType.ToString() Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetType() Namespace : IPA.Utilities.Async Assembly : IPA.Loader.dll Syntax public struct ReaderWriterLockSlimReadLocker : IDisposable Explicit Interface Implementations | Improve this Doc View Source IDisposable.Dispose() Declaration void IDisposable.Dispose() Implements System.IDisposable Extension Methods ReflectionUtil.SetField(Object, String, Object) ReflectionUtil.SetField(T, String, Object) ReflectionUtil.GetField(Object, String) ReflectionUtil.GetField(U, String) ReflectionUtil.SetProperty(Object, String, Object) ReflectionUtil.SetProperty(T, String, Object) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(T, String, Object[]) ReflectionUtil.InvokeMethod(Object, String, Object[]) ReflectionUtil.InvokeMethod(U, String, Object[]) See Also Synchronization LockRead(ReaderWriterLockSlim)"
},
"api/IPA.Utilities.AlmostVersion.StoredAs.html": {
"href": "api/IPA.Utilities.AlmostVersion.StoredAs.html",
@@ -102,37 +17,17 @@
"api/IPA.RuntimeOptions.html": {
"href": "api/IPA.RuntimeOptions.html",
"title": "Enum RuntimeOptions",
- "keywords": "Enum RuntimeOptions Namespace : IPA Assembly : IPA.Loader.dll Syntax public enum RuntimeOptions Fields Name Description DynamicInit SingleDynamicInit SingleStartInit Extension Methods ReflectionUtil.SetField(String, Object) ReflectionUtil.SetField(String, Object) ReflectionUtil.GetField(String) ReflectionUtil.GetField(String) ReflectionUtil.SetProperty(String, Object) ReflectionUtil.SetProperty(String, Object) ReflectionUtil.InvokeMethod(String, Object[]) ReflectionUtil.InvokeMethod(String, Object[]) ReflectionUtil.InvokeMethod(String, Object[]) ReflectionUtil.InvokeMethod(String, Object[])"
+ "keywords": "Enum RuntimeOptions Options that a plugin must specify to describe how it expects to be run. Namespace : IPA Assembly : IPA.Loader.dll Syntax public enum RuntimeOptions Fields Name Description DynamicInit Indicates that this plugin supports runtime enabling and disabling. SingleStartInit Indicates that this plugin expects to be initialized and enabled with the game, and disabled with the game. See Also PluginAttribute InitAttribute OnEnableAttribute OnDisableAttribute OnStartAttribute OnExitAttribute Extension Methods ReflectionUtil.SetField(String, Object) ReflectionUtil.SetField(String, Object) ReflectionUtil.GetField(String) ReflectionUtil.GetField(String) ReflectionUtil.SetProperty(String, Object) ReflectionUtil.SetProperty(String, Object) ReflectionUtil.InvokeMethod(String, Object[]) ReflectionUtil.InvokeMethod(String, Object[]) ReflectionUtil.InvokeMethod(String, Object[]) ReflectionUtil.InvokeMethod(String, Object[])"
},
"api/IPA.PluginAttribute.html": {
"href": "api/IPA.PluginAttribute.html",
"title": "Class PluginAttribute",
- "keywords": "Class PluginAttribute Inheritance Object Attribute PluginAttribute Implements _Attribute Inherited Members Attribute.GetCustomAttributes(MemberInfo, Type) Attribute.GetCustomAttributes(MemberInfo, Type, Boolean) Attribute.GetCustomAttributes(MemberInfo) Attribute.GetCustomAttributes(MemberInfo, Boolean) Attribute.IsDefined(MemberInfo, Type) Attribute.IsDefined(MemberInfo, Type, Boolean) Attribute.GetCustomAttribute(MemberInfo, Type) Attribute.GetCustomAttribute(MemberInfo, Type, Boolean) Attribute.GetCustomAttributes(ParameterInfo) Attribute.GetCustomAttributes(ParameterInfo, Type) Attribute.GetCustomAttributes(ParameterInfo, Type, Boolean) Attribute.GetCustomAttributes(ParameterInfo, Boolean) Attribute.IsDefined(ParameterInfo, Type) Attribute.IsDefined(ParameterInfo, Type, Boolean) Attribute.GetCustomAttribute(ParameterInfo, Type) Attribute.GetCustomAttribute(ParameterInfo, Type, Boolean) Attribute.GetCustomAttributes(Module, Type) Attribute.GetCustomAttributes(Module) Attribute.GetCustomAttributes(Module, Boolean) Attribute.GetCustomAttributes(Module, Type, Boolean) Attribute.IsDefined(Module, Type) Attribute.IsDefined(Module, Type, Boolean) Attribute.GetCustomAttribute(Module, Type) Attribute.GetCustomAttribute(Module, Type, Boolean) Attribute.GetCustomAttributes(Assembly, Type) Attribute.GetCustomAttributes(Assembly, Type, Boolean) Attribute.GetCustomAttributes(Assembly) Attribute.GetCustomAttributes(Assembly, Boolean) Attribute.IsDefined(Assembly, Type) Attribute.IsDefined(Assembly, Type, Boolean) Attribute.GetCustomAttribute(Assembly, Type) Attribute.GetCustomAttribute(Assembly, Type, Boolean) Attribute.Equals(Object) Attribute.GetHashCode() Attribute.Match(Object) Attribute.IsDefaultAttribute() Attribute._Attribute.GetTypeInfoCount(UInt32) Attribute._Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) Attribute._Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) Attribute._Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) Attribute.TypeId Object.ToString() Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetType() Object.MemberwiseClone() Namespace : IPA Assembly : IPA.Loader.dll Syntax [AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false)] public sealed class PluginAttribute : Attribute, _Attribute Constructors | Improve this Doc View Source PluginAttribute(RuntimeOptions) Declaration public PluginAttribute(RuntimeOptions runtimeOptions) Parameters Type Name Description RuntimeOptions runtimeOptions Properties | Improve this Doc View Source RuntimeOptions Declaration public RuntimeOptions RuntimeOptions { get; } Property Value Type Description RuntimeOptions Implements System.Runtime.InteropServices._Attribute Extension Methods ReflectionUtil.SetField(Object, String, Object) ReflectionUtil.SetField(T, String, Object) ReflectionUtil.GetField