You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

911 lines
41 KiB

  1. <!DOCTYPE html>
  2. <!--[if IE]><![endif]-->
  3. <html>
  4. <head>
  5. <meta charset="utf-8">
  6. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  7. <title>Class ReflectionUtil
  8. </title>
  9. <meta name="viewport" content="width=device-width">
  10. <meta name="title" content="Class ReflectionUtil
  11. ">
  12. <meta name="generator" content="docfx 2.48.0.0">
  13. <link rel="shortcut icon" href="../favicon.ico">
  14. <link rel="stylesheet" href="../styles/docfx.vendor.css">
  15. <link rel="stylesheet" href="../styles/docfx.css">
  16. <link rel="stylesheet" href="../styles/main.css">
  17. <link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet">
  18. <meta property="docfx:navrel" content="../toc.html">
  19. <meta property="docfx:tocrel" content="toc.html">
  20. <meta property="docfx:rel" content="../">
  21. <meta property="docfx:newtab" content="true">
  22. </head> <body data-spy="scroll" data-target="#affix" data-offset="120">
  23. <div id="wrapper">
  24. <header>
  25. <nav id="autocollapse" class="navbar navbar-inverse ng-scope" role="navigation">
  26. <div class="container">
  27. <div class="navbar-header">
  28. <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
  29. <span class="sr-only">Toggle navigation</span>
  30. <span class="icon-bar"></span>
  31. <span class="icon-bar"></span>
  32. <span class="icon-bar"></span>
  33. </button>
  34. <a class="navbar-brand" href="../index.html">
  35. <img id="logo" class="svg" src="../logo.svg" alt="">
  36. </a>
  37. </div>
  38. <div class="collapse navbar-collapse" id="navbar">
  39. <form class="navbar-form navbar-right" role="search" id="search">
  40. <div class="form-group">
  41. <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
  42. </div>
  43. </form>
  44. </div>
  45. </div>
  46. </nav>
  47. <div class="subnav navbar navbar-default">
  48. <div class="container hide-when-search" id="breadcrumb">
  49. <ul class="breadcrumb">
  50. <li></li>
  51. </ul>
  52. </div>
  53. </div>
  54. </header>
  55. <div class="container body-content">
  56. <div id="search-results">
  57. <div class="search-list"></div>
  58. <div class="sr-items">
  59. <p><i class="glyphicon glyphicon-refresh index-loading"></i></p>
  60. </div>
  61. <ul id="pagination"></ul>
  62. </div>
  63. </div>
  64. <div role="main" class="container body-content hide-when-search">
  65. <div class="sidenav hide-when-search">
  66. <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
  67. <div class="sidetoggle collapse" id="sidetoggle">
  68. <div id="sidetoc"></div>
  69. </div>
  70. </div>
  71. <div class="article row grid-right">
  72. <div class="col-md-10">
  73. <article class="content wrap" id="_content" data-uid="IPA.Utilities.ReflectionUtil">
  74. <h1 id="IPA_Utilities_ReflectionUtil" data-uid="IPA.Utilities.ReflectionUtil" class="text-break">Class ReflectionUtil
  75. </h1>
  76. <div class="markdown level0 summary"><p>A utility class providing reflection helper methods.</p>
  77. </div>
  78. <div class="markdown level0 conceptual"></div>
  79. <div class="inheritance">
  80. <h5>Inheritance</h5>
  81. <div class="level0"><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a></div>
  82. <div class="level1"><span class="xref">ReflectionUtil</span></div>
  83. </div>
  84. <div class="inheritedMembers">
  85. <h5>Inherited Members</h5>
  86. <div>
  87. <a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.tostring#System_Object_ToString">Object.ToString()</a>
  88. </div>
  89. <div>
  90. <a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.equals#System_Object_Equals_System_Object_">Object.Equals(Object)</a>
  91. </div>
  92. <div>
  93. <a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.equals#System_Object_Equals_System_Object_System_Object_">Object.Equals(Object, Object)</a>
  94. </div>
  95. <div>
  96. <a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.referenceequals#System_Object_ReferenceEquals_System_Object_System_Object_">Object.ReferenceEquals(Object, Object)</a>
  97. </div>
  98. <div>
  99. <a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.gethashcode#System_Object_GetHashCode">Object.GetHashCode()</a>
  100. </div>
  101. <div>
  102. <a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.gettype#System_Object_GetType">Object.GetType()</a>
  103. </div>
  104. <div>
  105. <a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.memberwiseclone#System_Object_MemberwiseClone">Object.MemberwiseClone()</a>
  106. </div>
  107. </div>
  108. <h6><strong>Namespace</strong>: <a class="xref" href="IPA.Utilities.html">IPA.Utilities</a></h6>
  109. <h6><strong>Assembly</strong>: IPA.Loader.dll</h6>
  110. <h5 id="IPA_Utilities_ReflectionUtil_syntax">Syntax</h5>
  111. <div class="codewrapper">
  112. <pre><code class="lang-csharp hljs">public static class ReflectionUtil</code></pre>
  113. </div>
  114. <h3 id="methods">Methods
  115. </h3>
  116. <span class="small pull-right mobile-hide">
  117. <span class="divider">|</span>
  118. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/new/4.0.0-beta/docs/override/new?filename=IPA_Utilities_ReflectionUtil_CopyComponent_UnityEngine_Component_System_Type_UnityEngine_GameObject_System_Type_.md&amp;value=---%0Auid%3A%20IPA.Utilities.ReflectionUtil.CopyComponent(UnityEngine.Component%2CSystem.Type%2CUnityEngine.GameObject%2CSystem.Type)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  119. </span>
  120. <span class="small pull-right mobile-hide">
  121. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/blob/08221f4382ffe645c7faf62de97d428d19fbf86d/IPA.Loader/Utilities/ReflectionUtil.cs/#L145">View Source</a>
  122. </span>
  123. <a id="IPA_Utilities_ReflectionUtil_CopyComponent_" data-uid="IPA.Utilities.ReflectionUtil.CopyComponent*"></a>
  124. <h4 id="IPA_Utilities_ReflectionUtil_CopyComponent_UnityEngine_Component_System_Type_UnityEngine_GameObject_System_Type_" data-uid="IPA.Utilities.ReflectionUtil.CopyComponent(UnityEngine.Component,System.Type,UnityEngine.GameObject,System.Type)">CopyComponent(Component, Type, GameObject, Type)</h4>
  125. <div class="markdown level1 summary"><p>Copies a component <code data-dev-comment-type="paramref" class="paramref">original</code> to a component of <code data-dev-comment-type="paramref" class="paramref">overridingType</code> on the destination <span class="xref">UnityEngine.GameObject</span>.</p>
  126. </div>
  127. <div class="markdown level1 conceptual"></div>
  128. <h5 class="decalaration">Declaration</h5>
  129. <div class="codewrapper">
  130. <pre><code class="lang-csharp hljs">public static Component CopyComponent(this Component original, Type overridingType, GameObject destination, Type originalTypeOverride = null)</code></pre>
  131. </div>
  132. <h5 class="parameters">Parameters</h5>
  133. <table class="table table-bordered table-striped table-condensed">
  134. <thead>
  135. <tr>
  136. <th>Type</th>
  137. <th>Name</th>
  138. <th>Description</th>
  139. </tr>
  140. </thead>
  141. <tbody>
  142. <tr>
  143. <td><span class="xref">UnityEngine.Component</span></td>
  144. <td><span class="parametername">original</span></td>
  145. <td><p>the original component</p>
  146. </td>
  147. </tr>
  148. <tr>
  149. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.type">Type</a></td>
  150. <td><span class="parametername">overridingType</span></td>
  151. <td><p>the new component&apos;s type</p>
  152. </td>
  153. </tr>
  154. <tr>
  155. <td><span class="xref">UnityEngine.GameObject</span></td>
  156. <td><span class="parametername">destination</span></td>
  157. <td><p>the destination GameObject</p>
  158. </td>
  159. </tr>
  160. <tr>
  161. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.type">Type</a></td>
  162. <td><span class="parametername">originalTypeOverride</span></td>
  163. <td><p>overrides the source component type (for example, to a superclass)</p>
  164. </td>
  165. </tr>
  166. </tbody>
  167. </table>
  168. <h5 class="returns">Returns</h5>
  169. <table class="table table-bordered table-striped table-condensed">
  170. <thead>
  171. <tr>
  172. <th>Type</th>
  173. <th>Description</th>
  174. </tr>
  175. </thead>
  176. <tbody>
  177. <tr>
  178. <td><span class="xref">UnityEngine.Component</span></td>
  179. <td><p>the copied component</p>
  180. </td>
  181. </tr>
  182. </tbody>
  183. </table>
  184. <span class="small pull-right mobile-hide">
  185. <span class="divider">|</span>
  186. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/new/4.0.0-beta/docs/override/new?filename=IPA_Utilities_ReflectionUtil_CopyComponent__1_UnityEngine_Component_UnityEngine_GameObject_System_Type_.md&amp;value=---%0Auid%3A%20IPA.Utilities.ReflectionUtil.CopyComponent%60%601(UnityEngine.Component%2CUnityEngine.GameObject%2CSystem.Type)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  187. </span>
  188. <span class="small pull-right mobile-hide">
  189. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/blob/08221f4382ffe645c7faf62de97d428d19fbf86d/IPA.Loader/Utilities/ReflectionUtil.cs/#L169">View Source</a>
  190. </span>
  191. <a id="IPA_Utilities_ReflectionUtil_CopyComponent_" data-uid="IPA.Utilities.ReflectionUtil.CopyComponent*"></a>
  192. <h4 id="IPA_Utilities_ReflectionUtil_CopyComponent__1_UnityEngine_Component_UnityEngine_GameObject_System_Type_" data-uid="IPA.Utilities.ReflectionUtil.CopyComponent``1(UnityEngine.Component,UnityEngine.GameObject,System.Type)">CopyComponent&lt;T&gt;(Component, GameObject, Type)</h4>
  193. <div class="markdown level1 summary"><p>A generic version of <a class="xref" href="IPA.Utilities.ReflectionUtil.html#IPA_Utilities_ReflectionUtil_CopyComponent_UnityEngine_Component_System_Type_UnityEngine_GameObject_System_Type_">CopyComponent(Component, Type, GameObject, Type)</a>. </p>
  194. </div>
  195. <div class="markdown level1 conceptual"></div>
  196. <h5 class="decalaration">Declaration</h5>
  197. <div class="codewrapper">
  198. <pre><code class="lang-csharp hljs">public static T CopyComponent&lt;T&gt;(this Component original, GameObject destination, Type originalTypeOverride = null)
  199. where T : Component</code></pre>
  200. </div>
  201. <h5 class="parameters">Parameters</h5>
  202. <table class="table table-bordered table-striped table-condensed">
  203. <thead>
  204. <tr>
  205. <th>Type</th>
  206. <th>Name</th>
  207. <th>Description</th>
  208. </tr>
  209. </thead>
  210. <tbody>
  211. <tr>
  212. <td><span class="xref">UnityEngine.Component</span></td>
  213. <td><span class="parametername">original</span></td>
  214. <td><p>the original component</p>
  215. </td>
  216. </tr>
  217. <tr>
  218. <td><span class="xref">UnityEngine.GameObject</span></td>
  219. <td><span class="parametername">destination</span></td>
  220. <td><p>the destination game object</p>
  221. </td>
  222. </tr>
  223. <tr>
  224. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.type">Type</a></td>
  225. <td><span class="parametername">originalTypeOverride</span></td>
  226. <td><p>overrides the source component type (for example, to a superclass)</p>
  227. </td>
  228. </tr>
  229. </tbody>
  230. </table>
  231. <h5 class="returns">Returns</h5>
  232. <table class="table table-bordered table-striped table-condensed">
  233. <thead>
  234. <tr>
  235. <th>Type</th>
  236. <th>Description</th>
  237. </tr>
  238. </thead>
  239. <tbody>
  240. <tr>
  241. <td><span class="xref">T</span></td>
  242. <td><p>the copied component</p>
  243. </td>
  244. </tr>
  245. </tbody>
  246. </table>
  247. <h5 class="typeParameters">Type Parameters</h5>
  248. <table class="table table-bordered table-striped table-condensed">
  249. <thead>
  250. <tr>
  251. <th>Name</th>
  252. <th>Description</th>
  253. </tr>
  254. </thead>
  255. <tbody>
  256. <tr>
  257. <td><span class="parametername">T</span></td>
  258. <td><p>the overriding type</p>
  259. </td>
  260. </tr>
  261. </tbody>
  262. </table>
  263. <h5 id="IPA_Utilities_ReflectionUtil_CopyComponent__1_UnityEngine_Component_UnityEngine_GameObject_System_Type__seealso">See Also</h5>
  264. <div class="seealso">
  265. <div><a class="xref" href="IPA.Utilities.ReflectionUtil.html#IPA_Utilities_ReflectionUtil_CopyComponent_UnityEngine_Component_System_Type_UnityEngine_GameObject_System_Type_">CopyComponent(Component, Type, GameObject, Type)</a></div>
  266. </div>
  267. <span class="small pull-right mobile-hide">
  268. <span class="divider">|</span>
  269. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/new/4.0.0-beta/docs/override/new?filename=IPA_Utilities_ReflectionUtil_GetField__1_System_Object_System_String_.md&amp;value=---%0Auid%3A%20IPA.Utilities.ReflectionUtil.GetField%60%601(System.Object%2CSystem.String)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  270. </span>
  271. <span class="small pull-right mobile-hide">
  272. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/blob/08221f4382ffe645c7faf62de97d428d19fbf86d/IPA.Loader/Utilities/ReflectionUtil.cs/#L46">View Source</a>
  273. </span>
  274. <a id="IPA_Utilities_ReflectionUtil_GetField_" data-uid="IPA.Utilities.ReflectionUtil.GetField*"></a>
  275. <h4 id="IPA_Utilities_ReflectionUtil_GetField__1_System_Object_System_String_" data-uid="IPA.Utilities.ReflectionUtil.GetField``1(System.Object,System.String)">GetField&lt;T&gt;(Object, String)</h4>
  276. <div class="markdown level1 summary"><p>Gets the value of a field.</p>
  277. </div>
  278. <div class="markdown level1 conceptual"></div>
  279. <h5 class="decalaration">Declaration</h5>
  280. <div class="codewrapper">
  281. <pre><code class="lang-csharp hljs">public static T GetField&lt;T&gt;(this object obj, string fieldName)</code></pre>
  282. </div>
  283. <h5 class="parameters">Parameters</h5>
  284. <table class="table table-bordered table-striped table-condensed">
  285. <thead>
  286. <tr>
  287. <th>Type</th>
  288. <th>Name</th>
  289. <th>Description</th>
  290. </tr>
  291. </thead>
  292. <tbody>
  293. <tr>
  294. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a></td>
  295. <td><span class="parametername">obj</span></td>
  296. <td><p>the object instance to pull from</p>
  297. </td>
  298. </tr>
  299. <tr>
  300. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.string">String</a></td>
  301. <td><span class="parametername">fieldName</span></td>
  302. <td><p>the name of the field to read</p>
  303. </td>
  304. </tr>
  305. </tbody>
  306. </table>
  307. <h5 class="returns">Returns</h5>
  308. <table class="table table-bordered table-striped table-condensed">
  309. <thead>
  310. <tr>
  311. <th>Type</th>
  312. <th>Description</th>
  313. </tr>
  314. </thead>
  315. <tbody>
  316. <tr>
  317. <td><span class="xref">T</span></td>
  318. <td><p>the value of the field</p>
  319. </td>
  320. </tr>
  321. </tbody>
  322. </table>
  323. <h5 class="typeParameters">Type Parameters</h5>
  324. <table class="table table-bordered table-striped table-condensed">
  325. <thead>
  326. <tr>
  327. <th>Name</th>
  328. <th>Description</th>
  329. </tr>
  330. </thead>
  331. <tbody>
  332. <tr>
  333. <td><span class="parametername">T</span></td>
  334. <td><p>the type of the field (result casted)</p>
  335. </td>
  336. </tr>
  337. </tbody>
  338. </table>
  339. <span class="small pull-right mobile-hide">
  340. <span class="divider">|</span>
  341. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/new/4.0.0-beta/docs/override/new?filename=IPA_Utilities_ReflectionUtil_InvokeMethod_System_Object_System_String_System_Object___.md&amp;value=---%0Auid%3A%20IPA.Utilities.ReflectionUtil.InvokeMethod(System.Object%2CSystem.String%2CSystem.Object%5B%5D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  342. </span>
  343. <span class="small pull-right mobile-hide">
  344. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/blob/08221f4382ffe645c7faf62de97d428d19fbf86d/IPA.Loader/Utilities/ReflectionUtil.cs/#L88">View Source</a>
  345. </span>
  346. <a id="IPA_Utilities_ReflectionUtil_InvokeMethod_" data-uid="IPA.Utilities.ReflectionUtil.InvokeMethod*"></a>
  347. <h4 id="IPA_Utilities_ReflectionUtil_InvokeMethod_System_Object_System_String_System_Object___" data-uid="IPA.Utilities.ReflectionUtil.InvokeMethod(System.Object,System.String,System.Object[])">InvokeMethod(Object, String, Object[])</h4>
  348. <div class="markdown level1 summary"><p>Invokes a method on an object.</p>
  349. </div>
  350. <div class="markdown level1 conceptual"></div>
  351. <h5 class="decalaration">Declaration</h5>
  352. <div class="codewrapper">
  353. <pre><code class="lang-csharp hljs">public static object InvokeMethod(this object obj, string methodName, params object[] methodArgs)</code></pre>
  354. </div>
  355. <h5 class="parameters">Parameters</h5>
  356. <table class="table table-bordered table-striped table-condensed">
  357. <thead>
  358. <tr>
  359. <th>Type</th>
  360. <th>Name</th>
  361. <th>Description</th>
  362. </tr>
  363. </thead>
  364. <tbody>
  365. <tr>
  366. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a></td>
  367. <td><span class="parametername">obj</span></td>
  368. <td><p>the object to call from</p>
  369. </td>
  370. </tr>
  371. <tr>
  372. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.string">String</a></td>
  373. <td><span class="parametername">methodName</span></td>
  374. <td><p>the method name</p>
  375. </td>
  376. </tr>
  377. <tr>
  378. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a>[]</td>
  379. <td><span class="parametername">methodArgs</span></td>
  380. <td><p>the method arguments</p>
  381. </td>
  382. </tr>
  383. </tbody>
  384. </table>
  385. <h5 class="returns">Returns</h5>
  386. <table class="table table-bordered table-striped table-condensed">
  387. <thead>
  388. <tr>
  389. <th>Type</th>
  390. <th>Description</th>
  391. </tr>
  392. </thead>
  393. <tbody>
  394. <tr>
  395. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a></td>
  396. <td><p>the return value</p>
  397. </td>
  398. </tr>
  399. </tbody>
  400. </table>
  401. <span class="small pull-right mobile-hide">
  402. <span class="divider">|</span>
  403. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/new/4.0.0-beta/docs/override/new?filename=IPA_Utilities_ReflectionUtil_InvokeMethod__1___0_System_String_System_Object___.md&amp;value=---%0Auid%3A%20IPA.Utilities.ReflectionUtil.InvokeMethod%60%601(%60%600%2CSystem.String%2CSystem.Object%5B%5D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  404. </span>
  405. <span class="small pull-right mobile-hide">
  406. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/blob/08221f4382ffe645c7faf62de97d428d19fbf86d/IPA.Loader/Utilities/ReflectionUtil.cs/#L103">View Source</a>
  407. </span>
  408. <a id="IPA_Utilities_ReflectionUtil_InvokeMethod_" data-uid="IPA.Utilities.ReflectionUtil.InvokeMethod*"></a>
  409. <h4 id="IPA_Utilities_ReflectionUtil_InvokeMethod__1___0_System_String_System_Object___" data-uid="IPA.Utilities.ReflectionUtil.InvokeMethod``1(``0,System.String,System.Object[])">InvokeMethod&lt;T&gt;(T, String, Object[])</h4>
  410. <div class="markdown level1 summary"><p>Invokes a method from <code data-dev-comment-type="typeparamref" class="typeparamref">T</code> on an object.</p>
  411. </div>
  412. <div class="markdown level1 conceptual"></div>
  413. <h5 class="decalaration">Declaration</h5>
  414. <div class="codewrapper">
  415. <pre><code class="lang-csharp hljs">public static object InvokeMethod&lt;T&gt;(this T obj, string methodName, params object[] args)
  416. where T : class</code></pre>
  417. </div>
  418. <h5 class="parameters">Parameters</h5>
  419. <table class="table table-bordered table-striped table-condensed">
  420. <thead>
  421. <tr>
  422. <th>Type</th>
  423. <th>Name</th>
  424. <th>Description</th>
  425. </tr>
  426. </thead>
  427. <tbody>
  428. <tr>
  429. <td><span class="xref">T</span></td>
  430. <td><span class="parametername">obj</span></td>
  431. <td><p>the object instance</p>
  432. </td>
  433. </tr>
  434. <tr>
  435. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.string">String</a></td>
  436. <td><span class="parametername">methodName</span></td>
  437. <td><p>the method&apos;s name</p>
  438. </td>
  439. </tr>
  440. <tr>
  441. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a>[]</td>
  442. <td><span class="parametername">args</span></td>
  443. <td><p>the method arguments</p>
  444. </td>
  445. </tr>
  446. </tbody>
  447. </table>
  448. <h5 class="returns">Returns</h5>
  449. <table class="table table-bordered table-striped table-condensed">
  450. <thead>
  451. <tr>
  452. <th>Type</th>
  453. <th>Description</th>
  454. </tr>
  455. </thead>
  456. <tbody>
  457. <tr>
  458. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a></td>
  459. <td><p>the return value</p>
  460. </td>
  461. </tr>
  462. </tbody>
  463. </table>
  464. <h5 class="typeParameters">Type Parameters</h5>
  465. <table class="table table-bordered table-striped table-condensed">
  466. <thead>
  467. <tr>
  468. <th>Name</th>
  469. <th>Description</th>
  470. </tr>
  471. </thead>
  472. <tbody>
  473. <tr>
  474. <td><span class="parametername">T</span></td>
  475. <td><p>the type to search for the method on</p>
  476. </td>
  477. </tr>
  478. </tbody>
  479. </table>
  480. <span class="small pull-right mobile-hide">
  481. <span class="divider">|</span>
  482. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/new/4.0.0-beta/docs/override/new?filename=IPA_Utilities_ReflectionUtil_InvokeMethod__1_System_Object_System_String_System_Object___.md&amp;value=---%0Auid%3A%20IPA.Utilities.ReflectionUtil.InvokeMethod%60%601(System.Object%2CSystem.String%2CSystem.Object%5B%5D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  483. </span>
  484. <span class="small pull-right mobile-hide">
  485. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/blob/08221f4382ffe645c7faf62de97d428d19fbf86d/IPA.Loader/Utilities/ReflectionUtil.cs/#L118">View Source</a>
  486. </span>
  487. <a id="IPA_Utilities_ReflectionUtil_InvokeMethod_" data-uid="IPA.Utilities.ReflectionUtil.InvokeMethod*"></a>
  488. <h4 id="IPA_Utilities_ReflectionUtil_InvokeMethod__1_System_Object_System_String_System_Object___" data-uid="IPA.Utilities.ReflectionUtil.InvokeMethod``1(System.Object,System.String,System.Object[])">InvokeMethod&lt;T&gt;(Object, String, Object[])</h4>
  489. <div class="markdown level1 summary"><p>Invokes a method.</p>
  490. </div>
  491. <div class="markdown level1 conceptual"></div>
  492. <h5 class="decalaration">Declaration</h5>
  493. <div class="codewrapper">
  494. <pre><code class="lang-csharp hljs">public static T InvokeMethod&lt;T&gt;(this object obj, string methodName, params object[] methodArgs)</code></pre>
  495. </div>
  496. <h5 class="parameters">Parameters</h5>
  497. <table class="table table-bordered table-striped table-condensed">
  498. <thead>
  499. <tr>
  500. <th>Type</th>
  501. <th>Name</th>
  502. <th>Description</th>
  503. </tr>
  504. </thead>
  505. <tbody>
  506. <tr>
  507. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a></td>
  508. <td><span class="parametername">obj</span></td>
  509. <td><p>the object instance</p>
  510. </td>
  511. </tr>
  512. <tr>
  513. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.string">String</a></td>
  514. <td><span class="parametername">methodName</span></td>
  515. <td><p>the method name to call</p>
  516. </td>
  517. </tr>
  518. <tr>
  519. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a>[]</td>
  520. <td><span class="parametername">methodArgs</span></td>
  521. <td><p>the method&apos;s arguments</p>
  522. </td>
  523. </tr>
  524. </tbody>
  525. </table>
  526. <h5 class="returns">Returns</h5>
  527. <table class="table table-bordered table-striped table-condensed">
  528. <thead>
  529. <tr>
  530. <th>Type</th>
  531. <th>Description</th>
  532. </tr>
  533. </thead>
  534. <tbody>
  535. <tr>
  536. <td><span class="xref">T</span></td>
  537. <td><p>the return value</p>
  538. </td>
  539. </tr>
  540. </tbody>
  541. </table>
  542. <h5 class="typeParameters">Type Parameters</h5>
  543. <table class="table table-bordered table-striped table-condensed">
  544. <thead>
  545. <tr>
  546. <th>Name</th>
  547. <th>Description</th>
  548. </tr>
  549. </thead>
  550. <tbody>
  551. <tr>
  552. <td><span class="parametername">T</span></td>
  553. <td><p>the return type</p>
  554. </td>
  555. </tr>
  556. </tbody>
  557. </table>
  558. <span class="small pull-right mobile-hide">
  559. <span class="divider">|</span>
  560. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/new/4.0.0-beta/docs/override/new?filename=IPA_Utilities_ReflectionUtil_InvokeMethod__2___1_System_String_System_Object___.md&amp;value=---%0Auid%3A%20IPA.Utilities.ReflectionUtil.InvokeMethod%60%602(%60%601%2CSystem.String%2CSystem.Object%5B%5D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  561. </span>
  562. <span class="small pull-right mobile-hide">
  563. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/blob/08221f4382ffe645c7faf62de97d428d19fbf86d/IPA.Loader/Utilities/ReflectionUtil.cs/#L132">View Source</a>
  564. </span>
  565. <a id="IPA_Utilities_ReflectionUtil_InvokeMethod_" data-uid="IPA.Utilities.ReflectionUtil.InvokeMethod*"></a>
  566. <h4 id="IPA_Utilities_ReflectionUtil_InvokeMethod__2___1_System_String_System_Object___" data-uid="IPA.Utilities.ReflectionUtil.InvokeMethod``2(``1,System.String,System.Object[])">InvokeMethod&lt;T, U&gt;(U, String, Object[])</h4>
  567. <div class="markdown level1 summary"><p>Invokes a method from <code data-dev-comment-type="typeparamref" class="typeparamref">U</code> on an object.</p>
  568. </div>
  569. <div class="markdown level1 conceptual"></div>
  570. <h5 class="decalaration">Declaration</h5>
  571. <div class="codewrapper">
  572. <pre><code class="lang-csharp hljs">public static T InvokeMethod&lt;T, U&gt;(this U obj, string methodName, params object[] methodArgs)
  573. where U : class</code></pre>
  574. </div>
  575. <h5 class="parameters">Parameters</h5>
  576. <table class="table table-bordered table-striped table-condensed">
  577. <thead>
  578. <tr>
  579. <th>Type</th>
  580. <th>Name</th>
  581. <th>Description</th>
  582. </tr>
  583. </thead>
  584. <tbody>
  585. <tr>
  586. <td><span class="xref">U</span></td>
  587. <td><span class="parametername">obj</span></td>
  588. <td><p>the object instance</p>
  589. </td>
  590. </tr>
  591. <tr>
  592. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.string">String</a></td>
  593. <td><span class="parametername">methodName</span></td>
  594. <td><p>the method name to call</p>
  595. </td>
  596. </tr>
  597. <tr>
  598. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a>[]</td>
  599. <td><span class="parametername">methodArgs</span></td>
  600. <td><p>the method&apos;s arguments</p>
  601. </td>
  602. </tr>
  603. </tbody>
  604. </table>
  605. <h5 class="returns">Returns</h5>
  606. <table class="table table-bordered table-striped table-condensed">
  607. <thead>
  608. <tr>
  609. <th>Type</th>
  610. <th>Description</th>
  611. </tr>
  612. </thead>
  613. <tbody>
  614. <tr>
  615. <td><span class="xref">T</span></td>
  616. <td><p>the return value</p>
  617. </td>
  618. </tr>
  619. </tbody>
  620. </table>
  621. <h5 class="typeParameters">Type Parameters</h5>
  622. <table class="table table-bordered table-striped table-condensed">
  623. <thead>
  624. <tr>
  625. <th>Name</th>
  626. <th>Description</th>
  627. </tr>
  628. </thead>
  629. <tbody>
  630. <tr>
  631. <td><span class="parametername">T</span></td>
  632. <td><p>the return type</p>
  633. </td>
  634. </tr>
  635. <tr>
  636. <td><span class="parametername">U</span></td>
  637. <td><p>the type to search for the method on</p>
  638. </td>
  639. </tr>
  640. </tbody>
  641. </table>
  642. <span class="small pull-right mobile-hide">
  643. <span class="divider">|</span>
  644. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/new/4.0.0-beta/docs/override/new?filename=IPA_Utilities_ReflectionUtil_SetField_System_Object_System_String_System_Object_.md&amp;value=---%0Auid%3A%20IPA.Utilities.ReflectionUtil.SetField(System.Object%2CSystem.String%2CSystem.Object)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  645. </span>
  646. <span class="small pull-right mobile-hide">
  647. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/blob/08221f4382ffe645c7faf62de97d428d19fbf86d/IPA.Loader/Utilities/ReflectionUtil.cs/#L18">View Source</a>
  648. </span>
  649. <a id="IPA_Utilities_ReflectionUtil_SetField_" data-uid="IPA.Utilities.ReflectionUtil.SetField*"></a>
  650. <h4 id="IPA_Utilities_ReflectionUtil_SetField_System_Object_System_String_System_Object_" data-uid="IPA.Utilities.ReflectionUtil.SetField(System.Object,System.String,System.Object)">SetField(Object, String, Object)</h4>
  651. <div class="markdown level1 summary"><p>Sets a field on the target object.</p>
  652. </div>
  653. <div class="markdown level1 conceptual"></div>
  654. <h5 class="decalaration">Declaration</h5>
  655. <div class="codewrapper">
  656. <pre><code class="lang-csharp hljs">public static void SetField(this object obj, string fieldName, object value)</code></pre>
  657. </div>
  658. <h5 class="parameters">Parameters</h5>
  659. <table class="table table-bordered table-striped table-condensed">
  660. <thead>
  661. <tr>
  662. <th>Type</th>
  663. <th>Name</th>
  664. <th>Description</th>
  665. </tr>
  666. </thead>
  667. <tbody>
  668. <tr>
  669. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a></td>
  670. <td><span class="parametername">obj</span></td>
  671. <td><p>the object instance</p>
  672. </td>
  673. </tr>
  674. <tr>
  675. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.string">String</a></td>
  676. <td><span class="parametername">fieldName</span></td>
  677. <td><p>the field to set</p>
  678. </td>
  679. </tr>
  680. <tr>
  681. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a></td>
  682. <td><span class="parametername">value</span></td>
  683. <td><p>the value to set it to</p>
  684. </td>
  685. </tr>
  686. </tbody>
  687. </table>
  688. <span class="small pull-right mobile-hide">
  689. <span class="divider">|</span>
  690. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/new/4.0.0-beta/docs/override/new?filename=IPA_Utilities_ReflectionUtil_SetField__1___0_System_String_System_Object_.md&amp;value=---%0Auid%3A%20IPA.Utilities.ReflectionUtil.SetField%60%601(%60%600%2CSystem.String%2CSystem.Object)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  691. </span>
  692. <span class="small pull-right mobile-hide">
  693. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/blob/08221f4382ffe645c7faf62de97d428d19fbf86d/IPA.Loader/Utilities/ReflectionUtil.cs/#L32">View Source</a>
  694. </span>
  695. <a id="IPA_Utilities_ReflectionUtil_SetField_" data-uid="IPA.Utilities.ReflectionUtil.SetField*"></a>
  696. <h4 id="IPA_Utilities_ReflectionUtil_SetField__1___0_System_String_System_Object_" data-uid="IPA.Utilities.ReflectionUtil.SetField``1(``0,System.String,System.Object)">SetField&lt;T&gt;(T, String, Object)</h4>
  697. <div class="markdown level1 summary"><p>Sets a field on the target object, as gotten from <code data-dev-comment-type="typeparamref" class="typeparamref">T</code>.</p>
  698. </div>
  699. <div class="markdown level1 conceptual"></div>
  700. <h5 class="decalaration">Declaration</h5>
  701. <div class="codewrapper">
  702. <pre><code class="lang-csharp hljs">public static void SetField&lt;T&gt;(this T obj, string fieldName, object value)
  703. where T : class</code></pre>
  704. </div>
  705. <h5 class="parameters">Parameters</h5>
  706. <table class="table table-bordered table-striped table-condensed">
  707. <thead>
  708. <tr>
  709. <th>Type</th>
  710. <th>Name</th>
  711. <th>Description</th>
  712. </tr>
  713. </thead>
  714. <tbody>
  715. <tr>
  716. <td><span class="xref">T</span></td>
  717. <td><span class="parametername">obj</span></td>
  718. <td><p>the object instance</p>
  719. </td>
  720. </tr>
  721. <tr>
  722. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.string">String</a></td>
  723. <td><span class="parametername">fieldName</span></td>
  724. <td><p>the field to set</p>
  725. </td>
  726. </tr>
  727. <tr>
  728. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a></td>
  729. <td><span class="parametername">value</span></td>
  730. <td><p>the value to set it to</p>
  731. </td>
  732. </tr>
  733. </tbody>
  734. </table>
  735. <h5 class="typeParameters">Type Parameters</h5>
  736. <table class="table table-bordered table-striped table-condensed">
  737. <thead>
  738. <tr>
  739. <th>Name</th>
  740. <th>Description</th>
  741. </tr>
  742. </thead>
  743. <tbody>
  744. <tr>
  745. <td><span class="parametername">T</span></td>
  746. <td><p>the type to get the field from</p>
  747. </td>
  748. </tr>
  749. </tbody>
  750. </table>
  751. <span class="small pull-right mobile-hide">
  752. <span class="divider">|</span>
  753. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/new/4.0.0-beta/docs/override/new?filename=IPA_Utilities_ReflectionUtil_SetProperty_System_Object_System_String_System_Object_.md&amp;value=---%0Auid%3A%20IPA.Utilities.ReflectionUtil.SetProperty(System.Object%2CSystem.String%2CSystem.Object)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  754. </span>
  755. <span class="small pull-right mobile-hide">
  756. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/blob/08221f4382ffe645c7faf62de97d428d19fbf86d/IPA.Loader/Utilities/ReflectionUtil.cs/#L60">View Source</a>
  757. </span>
  758. <a id="IPA_Utilities_ReflectionUtil_SetProperty_" data-uid="IPA.Utilities.ReflectionUtil.SetProperty*"></a>
  759. <h4 id="IPA_Utilities_ReflectionUtil_SetProperty_System_Object_System_String_System_Object_" data-uid="IPA.Utilities.ReflectionUtil.SetProperty(System.Object,System.String,System.Object)">SetProperty(Object, String, Object)</h4>
  760. <div class="markdown level1 summary"><p>Sets a property on the target object.</p>
  761. </div>
  762. <div class="markdown level1 conceptual"></div>
  763. <h5 class="decalaration">Declaration</h5>
  764. <div class="codewrapper">
  765. <pre><code class="lang-csharp hljs">public static void SetProperty(this object obj, string propertyName, object value)</code></pre>
  766. </div>
  767. <h5 class="parameters">Parameters</h5>
  768. <table class="table table-bordered table-striped table-condensed">
  769. <thead>
  770. <tr>
  771. <th>Type</th>
  772. <th>Name</th>
  773. <th>Description</th>
  774. </tr>
  775. </thead>
  776. <tbody>
  777. <tr>
  778. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a></td>
  779. <td><span class="parametername">obj</span></td>
  780. <td><p>the target object instance</p>
  781. </td>
  782. </tr>
  783. <tr>
  784. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.string">String</a></td>
  785. <td><span class="parametername">propertyName</span></td>
  786. <td><p>the name of the property</p>
  787. </td>
  788. </tr>
  789. <tr>
  790. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a></td>
  791. <td><span class="parametername">value</span></td>
  792. <td><p>the value to set it to</p>
  793. </td>
  794. </tr>
  795. </tbody>
  796. </table>
  797. <span class="small pull-right mobile-hide">
  798. <span class="divider">|</span>
  799. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/new/4.0.0-beta/docs/override/new?filename=IPA_Utilities_ReflectionUtil_SetProperty__1___0_System_String_System_Object_.md&amp;value=---%0Auid%3A%20IPA.Utilities.ReflectionUtil.SetProperty%60%601(%60%600%2CSystem.String%2CSystem.Object)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  800. </span>
  801. <span class="small pull-right mobile-hide">
  802. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/blob/08221f4382ffe645c7faf62de97d428d19fbf86d/IPA.Loader/Utilities/ReflectionUtil.cs/#L74">View Source</a>
  803. </span>
  804. <a id="IPA_Utilities_ReflectionUtil_SetProperty_" data-uid="IPA.Utilities.ReflectionUtil.SetProperty*"></a>
  805. <h4 id="IPA_Utilities_ReflectionUtil_SetProperty__1___0_System_String_System_Object_" data-uid="IPA.Utilities.ReflectionUtil.SetProperty``1(``0,System.String,System.Object)">SetProperty&lt;T&gt;(T, String, Object)</h4>
  806. <div class="markdown level1 summary"><p>Sets a property on the target object, as gotten from <code data-dev-comment-type="typeparamref" class="typeparamref">T</code></p>
  807. </div>
  808. <div class="markdown level1 conceptual"></div>
  809. <h5 class="decalaration">Declaration</h5>
  810. <div class="codewrapper">
  811. <pre><code class="lang-csharp hljs">public static void SetProperty&lt;T&gt;(this T obj, string propertyName, object value)
  812. where T : class</code></pre>
  813. </div>
  814. <h5 class="parameters">Parameters</h5>
  815. <table class="table table-bordered table-striped table-condensed">
  816. <thead>
  817. <tr>
  818. <th>Type</th>
  819. <th>Name</th>
  820. <th>Description</th>
  821. </tr>
  822. </thead>
  823. <tbody>
  824. <tr>
  825. <td><span class="xref">T</span></td>
  826. <td><span class="parametername">obj</span></td>
  827. <td><p>the object instance</p>
  828. </td>
  829. </tr>
  830. <tr>
  831. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.string">String</a></td>
  832. <td><span class="parametername">propertyName</span></td>
  833. <td><p>the property to set</p>
  834. </td>
  835. </tr>
  836. <tr>
  837. <td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a></td>
  838. <td><span class="parametername">value</span></td>
  839. <td><p>the value to set it to</p>
  840. </td>
  841. </tr>
  842. </tbody>
  843. </table>
  844. <h5 class="typeParameters">Type Parameters</h5>
  845. <table class="table table-bordered table-striped table-condensed">
  846. <thead>
  847. <tr>
  848. <th>Name</th>
  849. <th>Description</th>
  850. </tr>
  851. </thead>
  852. <tbody>
  853. <tr>
  854. <td><span class="parametername">T</span></td>
  855. <td><p>the type to get the property from</p>
  856. </td>
  857. </tr>
  858. </tbody>
  859. </table>
  860. </article>
  861. </div>
  862. <div class="hidden-sm col-md-2" role="complementary">
  863. <div class="sideaffix">
  864. <div class="contribution">
  865. <ul class="nav">
  866. <li>
  867. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/new/4.0.0-beta/docs/override/new?filename=IPA_Utilities_ReflectionUtil.md&amp;value=---%0Auid%3A%20IPA.Utilities.ReflectionUtil%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A" class="contribution-link">Improve this Doc</a>
  868. </li>
  869. <li>
  870. <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/blob/08221f4382ffe645c7faf62de97d428d19fbf86d/IPA.Loader/Utilities/ReflectionUtil.cs/#L10" class="contribution-link">View Source</a>
  871. </li>
  872. </ul>
  873. </div>
  874. <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
  875. <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
  876. </nav>
  877. </div>
  878. </div>
  879. </div>
  880. </div>
  881. <footer>
  882. <div class="grad-bottom"></div>
  883. <div class="footer">
  884. <div class="container">
  885. <span class="pull-right">
  886. <a href="#top">Back to top</a>
  887. </span>
  888. <span>Generated by <strong>DocFX</strong></span>
  889. </div>
  890. </div>
  891. </footer>
  892. </div>
  893. <script type="text/javascript" src="../styles/docfx.vendor.js"></script>
  894. <script type="text/javascript" src="../styles/docfx.js"></script>
  895. <script type="text/javascript" src="../styles/main.js"></script>
  896. </body>
  897. </html>