Deploy to GitHub pages

This commit is contained in:
github-actions[bot]
2025-08-02 18:17:09 +00:00
committed by GitHub
commit aac9e42e84
486 changed files with 21771 additions and 0 deletions

0
.nojekyll Normal file
View File

34
404.html Normal file

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
const t=JSON.parse('{"key":"v-3706649a","path":"/404.html","title":"","lang":"en-US","frontmatter":{"layout":"NotFound"},"headers":[],"git":{},"filePathRelative":null}');export{t as data};

View File

@@ -0,0 +1 @@
import{_ as e,o as c,c as t}from"./app-BpUB8-Q8.js";const _={};function o(r,n){return c(),t("div")}const a=e(_,[["render",o],["__file","404.html.vue"]]);export{a as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-4fca92c0","path":"/en/api/public/com/highcapable/yukihookapi/hook/core/finder/base/BaseFinder.html","title":"BaseFinder - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"BaseFinder.IndexTypeCondition - class","slug":"basefinder-indextypecondition-class","link":"#basefinder-indextypecondition-class","children":[{"level":3,"title":"index - method","slug":"index-method","link":"#index-method","children":[]},{"level":3,"title":"index - method","slug":"index-method-1","link":"#index-method-1","children":[]},{"level":3,"title":"IndexTypeConditionSort - class","slug":"indextypeconditionsort-class","link":"#indextypeconditionsort-class","children":[]}]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":2}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/core/finder/base/BaseFinder.md"}');export{e as data};

View File

@@ -0,0 +1,9 @@
import{_ as s,o as e,c as a,a as o}from"./app-BpUB8-Q8.js";const n={},p=o(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="basefinder-class" tabindex="-1"><a class="header-anchor" href="#basefinder-class" aria-hidden="true">#</a> BaseFinder <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">abstract</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">BaseFinder</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><code>v1.1.0</code> <code>修改</code></p><p>分离原始命名 <code>BaseFinder</code> 中的部分方法与参数到 <code>MemberBaseFinder</code></p><p><strong>功能描述</strong></p><blockquote><p>这是 <code>Class</code> 与 <code>Member</code> 查找类功能的基本类实现。</p></blockquote><h2 id="basefinder-indextypecondition-class" tabindex="-1"><a class="header-anchor" href="#basefinder-indextypecondition-class" aria-hidden="true">#</a> BaseFinder.IndexTypeCondition <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">IndexTypeCondition</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> type: </span><span style="color:#F69D50;">IndexConfigType</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>字节码下标筛选实现类。</p></blockquote><h3 id="index-method" tabindex="-1"><a class="header-anchor" href="#index-method" aria-hidden="true">#</a> index <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">index</span><span style="color:#ADBAC7;">(num: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置下标。</p></blockquote><p>若 <code>index</code> 小于零则为倒序,此时可以使用 <code>IndexTypeConditionSort.reverse</code> 方法实现。</p><p>可使用 <code>IndexTypeConditionSort.first</code> 和 <code>IndexTypeConditionSort.last</code> 设置首位和末位筛选条件。</p><h3 id="index-method-1" tabindex="-1"><a class="header-anchor" href="#index-method-1" aria-hidden="true">#</a> index <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">index</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">IndexTypeConditionSort</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>得到下标。</p></blockquote><h3 id="indextypeconditionsort-class" tabindex="-1"><a class="header-anchor" href="#indextypeconditionsort-class" aria-hidden="true">#</a> IndexTypeConditionSort <span class="symbol">- class</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">IndexTypeConditionSort</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>字节码下标排序实现类。</p></blockquote><h4 id="first-method" tabindex="-1"><a class="header-anchor" href="#first-method" aria-hidden="true">#</a> first <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">first</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置满足条件的第一个。</p></blockquote><h4 id="last-method" tabindex="-1"><a class="header-anchor" href="#last-method" aria-hidden="true">#</a> last <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">last</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置满足条件的最后一个。</p></blockquote><h4 id="reverse-method" tabindex="-1"><a class="header-anchor" href="#reverse-method" aria-hidden="true">#</a> reverse <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">reverse</span><span style="color:#ADBAC7;">(num: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置倒序下标。</p></blockquote>`,53),l=[p];function t(c,d){return e(),a("div",null,l)}const i=s(n,[["render",t],["__file","BaseFinder.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-0f719471","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/base/BaseFinder.html","title":"BaseFinder - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"BaseFinder.IndexTypeCondition - class","slug":"basefinder-indextypecondition-class","link":"#basefinder-indextypecondition-class","children":[{"level":3,"title":"index - method","slug":"index-method","link":"#index-method","children":[]},{"level":3,"title":"index - method","slug":"index-method-1","link":"#index-method-1","children":[]},{"level":3,"title":"IndexTypeConditionSort - class","slug":"indextypeconditionsort-class","link":"#indextypeconditionsort-class","children":[]}]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":2}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/base/BaseFinder.md"}');export{e as data};

View File

@@ -0,0 +1,9 @@
import{_ as s,o as e,c as n,a as o}from"./app-BpUB8-Q8.js";const a={},t=o(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="basefinder-class" tabindex="-1"><a class="header-anchor" href="#basefinder-class" aria-hidden="true">#</a> BaseFinder <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">abstract</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">BaseFinder</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><code>v1.1.0</code> <code>modified</code></p><p>分离原始命名 <code>BaseFinder</code> 中的部分方法与参数到 <code>MemberBaseFinder</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>这是 <code>Class</code> 与 <code>Member</code> 查找类功能的基本类实现。</p></blockquote><h2 id="basefinder-indextypecondition-class" tabindex="-1"><a class="header-anchor" href="#basefinder-indextypecondition-class" aria-hidden="true">#</a> BaseFinder.IndexTypeCondition <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">IndexTypeCondition</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> type: </span><span style="color:#F69D50;">IndexConfigType</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>字节码下标筛选实现类。</p></blockquote><h3 id="index-method" tabindex="-1"><a class="header-anchor" href="#index-method" aria-hidden="true">#</a> index <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">index</span><span style="color:#ADBAC7;">(num: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置下标。</p></blockquote><p>若 <code>index</code> 小于零则为倒序,此时可以使用 <code>IndexTypeConditionSort.reverse</code> 方法实现。</p><p>可使用 <code>IndexTypeConditionSort.first</code> 和 <code>IndexTypeConditionSort.last</code> 设置首位和末位筛选条件。</p><h3 id="index-method-1" tabindex="-1"><a class="header-anchor" href="#index-method-1" aria-hidden="true">#</a> index <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">index</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">IndexTypeConditionSort</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到下标。</p></blockquote><h3 id="indextypeconditionsort-class" tabindex="-1"><a class="header-anchor" href="#indextypeconditionsort-class" aria-hidden="true">#</a> IndexTypeConditionSort <span class="symbol">- class</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">IndexTypeConditionSort</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>字节码下标排序实现类。</p></blockquote><h4 id="first-method" tabindex="-1"><a class="header-anchor" href="#first-method" aria-hidden="true">#</a> first <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">first</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置满足条件的第一个。</p></blockquote><h4 id="last-method" tabindex="-1"><a class="header-anchor" href="#last-method" aria-hidden="true">#</a> last <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">last</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置满足条件的最后一个。</p></blockquote><h4 id="reverse-method" tabindex="-1"><a class="header-anchor" href="#reverse-method" aria-hidden="true">#</a> reverse <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">reverse</span><span style="color:#ADBAC7;">(num: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置倒序下标。</p></blockquote>`,54),l=[t];function c(d,p){return e(),n("div",null,l)}const i=s(a,[["render",c],["__file","BaseFinder.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const a=JSON.parse('{"key":"v-2f64a2d4","path":"/en/api/public/com/highcapable/yukihookapi/hook/xposed/channel/data/ChannelData.html","title":"ChannelData - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":3}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/xposed/channel/data/ChannelData.md"}');export{a as data};

View File

@@ -0,0 +1,23 @@
import{_ as s,o as a,c as n,a as l}from"./app-BpUB8-Q8.js";const e={},o=l(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="channeldata-class" tabindex="-1"><a class="header-anchor" href="#channeldata-class" aria-hidden="true">#</a> ChannelData <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">data</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">ChannelData</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt;(</span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> key: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">, </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?) : </span><span style="color:#F69D50;">Serializable</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.88</code> <code>新增</code></p><p><code>v1.1.5</code> <code>修改</code></p><p>实现了 <code>Serializable</code> 接口</p><p><strong>功能描述</strong></p><blockquote><p>数据通讯桥键值构造类。</p></blockquote><p>这个类是对 <code>YukiHookDataChannel</code> 的一个扩展用法。</p><p><strong>功能示例</strong></p><p>建立一个模板类定义模块与宿主需要发送的键值数据。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">object</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">DataConst</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> TEST_KV_DATA_1 </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">ChannelData</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;test_data_1&quot;</span><span style="color:#ADBAC7;">, </span><span style="color:#96D0FF;">&quot;defalut value&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> TEST_KV_DATA_2 </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">ChannelData</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;test_data_2&quot;</span><span style="color:#ADBAC7;">, </span><span style="color:#6CB6FF;">0</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>键值数据定义后,你就可以方便地在模块和宿主中调用所需要发送的数据。</p><blockquote><p>模块示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#768390;">// 从指定包名的宿主获取</span></span>
<span class="line"><span style="color:#DCBDFB;">dataChannel</span><span style="color:#ADBAC7;">(packageName </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;com.example.demo&quot;</span><span style="color:#ADBAC7;">).</span><span style="color:#DCBDFB;">wait</span><span style="color:#ADBAC7;">(DataConst.TEST_KV_DATA_1) { </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">-&gt;</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"><span style="color:#768390;">// 发送给指定包名的宿主 - 未填写 value 时将使用模板提供的默认值</span></span>
<span class="line"><span style="color:#DCBDFB;">dataChannel</span><span style="color:#ADBAC7;">(packageName </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;com.example.demo&quot;</span><span style="color:#ADBAC7;">).</span><span style="color:#DCBDFB;">put</span><span style="color:#ADBAC7;">(DataConst.TEST_KV_DATA_1, </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;sending value&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><blockquote><p>宿主示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#768390;">// 从模块获取</span></span>
<span class="line"><span style="color:#ADBAC7;">dataChannel.</span><span style="color:#DCBDFB;">wait</span><span style="color:#ADBAC7;">(DataConst.TEST_KV_DATA_1) { </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">-&gt;</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"><span style="color:#768390;">// 发送给模块 - 未填写 value 时将使用模板提供的默认值</span></span>
<span class="line"><span style="color:#ADBAC7;">dataChannel.</span><span style="color:#DCBDFB;">put</span><span style="color:#ADBAC7;">(DataConst.TEST_KV_DATA_1, </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;sending value&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>你依然可以不使用模板定义的默认值,随时修改你的默认值。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#768390;">// 获取 - 此时 value 取到的默认值将会是 2 - 并不是模板提供的 0</span></span>
<span class="line"><span style="color:#ADBAC7;">dataChannel.</span><span style="color:#DCBDFB;">wait</span><span style="color:#ADBAC7;">(DataConst.TEST_KV_DATA_2, </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">2</span><span style="color:#ADBAC7;">) { </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">-&gt;</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div>`,22),p=[o];function c(t,r){return a(),n("div",null,p)}const d=s(e,[["render",c],["__file","ChannelData.html.vue"]]);export{d as default};

View File

@@ -0,0 +1 @@
const a=JSON.parse('{"key":"v-493d37f6","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/xposed/channel/data/ChannelData.html","title":"ChannelData - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":3}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/xposed/channel/data/ChannelData.md"}');export{a as data};

View File

@@ -0,0 +1,23 @@
import{_ as s,o as a,c as n,a as l}from"./app-BpUB8-Q8.js";const e={},o=l(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="channeldata-class" tabindex="-1"><a class="header-anchor" href="#channeldata-class" aria-hidden="true">#</a> ChannelData <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">data</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">ChannelData</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt;(</span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> key: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">, </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?) : </span><span style="color:#F69D50;">Serializable</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.88</code> <code>added</code></p><p><code>v1.1.5</code> <code>modified</code></p><p>实现了 <code>Serializable</code> 接口</p><p><strong>Function Illustrate</strong></p><blockquote><p>数据通讯桥键值构造类。</p></blockquote><p>这个类是对 <code>YukiHookDataChannel</code> 的一个扩展用法。</p><p><strong>Function Example</strong></p><p>建立一个模板类定义模块与宿主需要发送的键值数据。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">object</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">DataConst</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> TEST_KV_DATA_1 </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">ChannelData</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;test_data_1&quot;</span><span style="color:#ADBAC7;">, </span><span style="color:#96D0FF;">&quot;defalut value&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> TEST_KV_DATA_2 </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">ChannelData</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;test_data_2&quot;</span><span style="color:#ADBAC7;">, </span><span style="color:#6CB6FF;">0</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>键值数据定义后,你就可以方便地在模块和宿主中调用所需要发送的数据。</p><blockquote><p>模块示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#768390;">// 从指定包名的宿主获取</span></span>
<span class="line"><span style="color:#DCBDFB;">dataChannel</span><span style="color:#ADBAC7;">(packageName </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;com.example.demo&quot;</span><span style="color:#ADBAC7;">).</span><span style="color:#DCBDFB;">wait</span><span style="color:#ADBAC7;">(DataConst.TEST_KV_DATA_1) { </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">-&gt;</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"><span style="color:#768390;">// 发送给指定包名的宿主 - 未填写 value 时将使用模板提供的默认值</span></span>
<span class="line"><span style="color:#DCBDFB;">dataChannel</span><span style="color:#ADBAC7;">(packageName </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;com.example.demo&quot;</span><span style="color:#ADBAC7;">).</span><span style="color:#DCBDFB;">put</span><span style="color:#ADBAC7;">(DataConst.TEST_KV_DATA_1, </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;sending value&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><blockquote><p>宿主示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#768390;">// 从模块获取</span></span>
<span class="line"><span style="color:#ADBAC7;">dataChannel.</span><span style="color:#DCBDFB;">wait</span><span style="color:#ADBAC7;">(DataConst.TEST_KV_DATA_1) { </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">-&gt;</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"><span style="color:#768390;">// 发送给模块 - 未填写 value 时将使用模板提供的默认值</span></span>
<span class="line"><span style="color:#ADBAC7;">dataChannel.</span><span style="color:#DCBDFB;">put</span><span style="color:#ADBAC7;">(DataConst.TEST_KV_DATA_1, </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;sending value&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>你依然可以不使用模板定义的默认值,随时修改你的默认值。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#768390;">// 获取 - 此时 value 取到的默认值将会是 2 - 并不是模板提供的 0</span></span>
<span class="line"><span style="color:#ADBAC7;">dataChannel.</span><span style="color:#DCBDFB;">wait</span><span style="color:#ADBAC7;">(DataConst.TEST_KV_DATA_2, </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">2</span><span style="color:#ADBAC7;">) { </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">-&gt;</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div>`,23),p=[o];function t(c,r){return a(),n("div",null,p)}const d=s(e,[["render",t],["__file","ChannelData.html.vue"]]);export{d as default};

View File

@@ -0,0 +1 @@
const a=JSON.parse('{"key":"v-87027140","path":"/en/api/public/com/highcapable/yukihookapi/hook/xposed/channel/priority/ChannelPriority.html","title":"ChannelPriority - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":2}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/xposed/channel/priority/ChannelPriority.md"}');export{a as data};

View File

@@ -0,0 +1 @@
const a=JSON.parse('{"key":"v-b57870de","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/xposed/channel/priority/ChannelPriority.html","title":"ChannelPriority - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":2}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/xposed/channel/priority/ChannelPriority.md"}');export{a as data};

View File

@@ -0,0 +1,2 @@
import{_ as s,o,c as a,a as n}from"./app-BpUB8-Q8.js";const e={},c=n(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="channelpriority-class" tabindex="-1"><a class="header-anchor" href="#channelpriority-class" aria-hidden="true">#</a> ChannelPriority <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">ChannelPriority</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> conditions: () </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Boolean)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.5</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>数据通讯桥响应优先级构造类。</p></blockquote><p>这个类是对 <code>YukiHookDataChannel</code> 的一个扩展用法。</p>`,8),t=[c];function l(r,p){return o(),a("div",null,t)}const d=s(e,[["render",l],["__file","ChannelPriority.html.vue"]]);export{d as default};

View File

@@ -0,0 +1,2 @@
import{_ as e,o,c as n,a as s}from"./app-BpUB8-Q8.js";const a={},t=s(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="channelpriority-class" tabindex="-1"><a class="header-anchor" href="#channelpriority-class" aria-hidden="true">#</a> ChannelPriority <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">ChannelPriority</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> conditions: () </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Boolean)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.5</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>数据通讯桥响应优先级构造类。</p></blockquote><p>这个类是对 <code>YukiHookDataChannel</code> 的一个扩展用法。</p>`,9),c=[t];function l(r,i){return o(),n("div",null,c)}const d=e(a,[["render",l],["__file","ChannelPriority.html.vue"]]);export{d as default};

View File

@@ -0,0 +1 @@
import{_ as c,r as a,o as n,c as r,b as e,d as o,e as s,a as p}from"./app-BpUB8-Q8.js";const d={},i=p('<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="componenttypefactory-kt" tabindex="-1"><a class="header-anchor" href="#componenttypefactory-kt" aria-hidden="true">#</a> ComponentTypeFactory <span class="symbol">- kt</span></h1><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>这是一个预置反射类型的常量类,主要为 <code>Android</code> 相关组件的 <code>Class</code> 内容,跟随版本更新会逐一进行增加。</p></blockquote>',6),l={href:"https://github.com/HighCapable/YukiHookAPI/blob/master/yukihookapi-core/src/main/java/com/highcapable/yukihookapi/hook/type/android/ComponentTypeFactory.kt",target:"_blank",rel:"noopener noreferrer"};function k(m,h){const t=a("ExternalLinkIcon");return n(),r("div",null,[i,e("p",null,[o("详情可 "),e("a",l,[o("点击这里"),s(t)]),o(" 进行查看。")])])}const u=c(d,[["render",k],["__file","ComponentTypeFactory.html.vue"]]);export{u as default};

View File

@@ -0,0 +1 @@
import{_ as n,r as a,o as c,c as r,b as o,d as e,e as s,a as i}from"./app-BpUB8-Q8.js";const p={},l=i('<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="componenttypefactory-kt" tabindex="-1"><a class="header-anchor" href="#componenttypefactory-kt" aria-hidden="true">#</a> ComponentTypeFactory <span class="symbol">- kt</span></h1><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>这是一个预置反射类型的常量类,主要为 <code>Android</code> 相关组件的 <code>Class</code> 内容,跟随版本更新会逐一进行增加。</p></blockquote>',7),d={href:"https://github.com/HighCapable/YukiHookAPI/blob/master/yukihookapi-core/src/main/java/com/highcapable/yukihookapi/hook/type/android/ComponentTypeFactory.kt",target:"_blank",rel:"noopener noreferrer"};function h(u,m){const t=a("ExternalLinkIcon");return c(),r("div",null,[l,o("p",null,[e("详情可 "),o("a",d,[e("点击这里"),s(t)]),e(" 进行查看。")])])}const g=n(p,[["render",h],["__file","ComponentTypeFactory.html.vue"]]);export{g as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-8293d958","path":"/en/api/public/com/highcapable/yukihookapi/hook/type/android/ComponentTypeFactory.html","title":"ComponentTypeFactory - kt","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":6}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/type/android/ComponentTypeFactory.md"}');export{e as data};

View File

@@ -0,0 +1 @@
const o=JSON.parse('{"key":"v-5e874c45","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/type/android/ComponentTypeFactory.html","title":"ComponentTypeFactory - kt","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":6}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/type/android/ComponentTypeFactory.md"}');export{o as data};

View File

@@ -0,0 +1,88 @@
import{_ as s,o as n,c as o,a as e}from"./app-BpUB8-Q8.js";const a={},l=e(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="constructorfinder-class" tabindex="-1"><a class="header-anchor" href="#constructorfinder-class" aria-hidden="true">#</a> ConstructorFinder <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">ConstructorFinder</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">override</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> classSet: </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;) : </span><span style="color:#F69D50;">MemberBaseFinder</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.2</code> <code>modified</code></p><p>合并到 <code>BaseFinder</code></p><p><code>v1.1.0</code> <code>modified</code></p><p>合并到 <code>MemberBaseFinder</code></p><p><code>v1.1.8</code> <code>modified</code></p><p>移动 <code>hookInstance</code> 参数到 <code>MemberBaseFinder.MemberHookerManager</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Constructor</code> 查找类。</p></blockquote><p>可通过指定类型查找指定 <code>Constructor</code> 或一组 <code>Constructor</code>。</p><h2 id="paramcount-field" tabindex="-1"><a class="header-anchor" href="#paramcount-field" aria-hidden="true">#</a> paramCount <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> paramCount: </span><span style="color:#F69D50;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.67</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Constructor</code> 参数个数。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此变量指定参数个数。</p><p>若参数个数小于零则忽略并使用 <code>param</code>。</p><h2 id="modifiers-method" tabindex="-1"><a class="header-anchor" href="#modifiers-method" aria-hidden="true">#</a> modifiers <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">modifiers</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ModifierConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.67</code> <code>added</code></p><p><code>v1.0.80</code> <code>modified</code></p><p>将方法体进行 inline</p><p><code>v1.1.0</code> <code>modified</code></p><p>合并到 <code>ModifierConditions</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Constructor</code> 标识符筛选条件。</p></blockquote><p>可不设置筛选条件,默认模糊查找并取第一个匹配的 <code>Constructor</code>。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="emptyparam-method" tabindex="-1"><a class="header-anchor" href="#emptyparam-method" aria-hidden="true">#</a> emptyParam <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">emptyParam</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.75</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Constructor</code> 空参数、无参数。</p></blockquote><h2 id="param-method" tabindex="-1"><a class="header-anchor" href="#param-method" aria-hidden="true">#</a> param <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> paramType: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Constructor</code> 参数。</p></blockquote><p>如果同时使用了 <code>paramCount</code> 则 <code>paramType</code> 的数量必须与 <code>paramCount</code> 完全匹配。</p><p>如果 <code>Constructor</code> 中存在一些无意义又很长的类型,你可以使用 <a href="../../../type/defined/DefinedTypeFactory#vaguetype-field">VagueType</a> 来替代它。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>无参 <strong>Constructor</strong> 请使用 <strong>emptyParam</strong> 设置查找条件。</p><p>有参 <strong>Constructor</strong> 必须使用此方法设定参数或使用 <strong>paramCount</strong> 指定个数。</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="param-method-1" tabindex="-1"><a class="header-anchor" href="#param-method-1" aria-hidden="true">#</a> param <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ObjectsConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.5</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Constructor</code> 参数条件。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>无参 <strong>Constructor</strong> 请使用 <strong>emptyParam</strong> 设置查找条件。</p><p>有参 <strong>Constructor</strong> 必须使用此方法设定参数或使用 <strong>paramCount</strong> 指定个数。</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="paramcount-method" tabindex="-1"><a class="header-anchor" href="#paramcount-method" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(num: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Constructor</code> 参数个数。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数。</p><p>若参数个数小于零则忽略并使用 <code>param</code>。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="paramcount-method-1" tabindex="-1"><a class="header-anchor" href="#paramcount-method-1" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(numRange: </span><span style="color:#F69D50;">IntRange</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Constructor</code> 参数个数范围。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数范围。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="paramcount-method-2" tabindex="-1"><a class="header-anchor" href="#paramcount-method-2" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">CountConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Constructor</code> 参数个数条件。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数条件。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="superclass-method" tabindex="-1"><a class="header-anchor" href="#superclass-method" aria-hidden="true">#</a> superClass <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">superClass</span><span style="color:#ADBAC7;">(isOnlySuperClass: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.80</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置在 <code>classSet</code> 的所有父类中查找当前 <code>Constructor</code>。</p></blockquote><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>若当前 <strong>classSet</strong> 的父类较多可能会耗时API 会自动循环到父类继承是 <strong>Any</strong> 前的最后一个类。</p></div><h2 id="remedyplan-class" tabindex="-1"><a class="header-anchor" href="#remedyplan-class" aria-hidden="true">#</a> RemedyPlan <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">RemedyPlan</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Constructor</code> 重查找实现类,可累计失败次数直到查找成功。</p></blockquote><h3 id="constructor-method" tabindex="-1"><a class="header-anchor" href="#constructor-method" aria-hidden="true">#</a> constructor <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">ConstructorConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.80</code> <code>modified</code></p><p>将方法体进行 inline</p><p><strong>Function Illustrate</strong></p><blockquote><p>创建需要重新查找的 <code>Constructor</code>。</p></blockquote><p>你可以添加多个备选 <code>Constructor</code>,直到成功为止,若最后依然失败,将停止查找并输出错误日志。</p><h3 id="result-class" tabindex="-1"><a class="header-anchor" href="#result-class" aria-hidden="true">#</a> Result <span class="symbol">- class</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.1</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>RemedyPlan</code> 结果实现类。</p></blockquote><h4 id="onfind-method" tabindex="-1"><a class="header-anchor" href="#onfind-method" aria-hidden="true">#</a> onFind <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onFind</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Constructor</span><span style="color:#ADBAC7;">&lt;*&gt;&gt;.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.1</code> <code>added</code></p><p><code>v1.1.0</code> <code>modified</code></p><p><code>initiate</code> 参数 <code>Constructor</code> 变为 <code>HashSet&lt;Constructor&gt;</code></p><p><code>v1.2.0</code> <code>modified</code></p><p><code>initiate</code> 类型由 <code>HashSet</code> 修改为 <code>MutableList</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>当在 <code>RemedyPlan</code> 中找到结果时。</p></blockquote><p><strong>Function Example</strong></p><p>你可以方便地对重查找的 <code>Constructor</code> 实现 <code>onFind</code> 方法。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">onFind</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="process-class" tabindex="-1"><a class="header-anchor" href="#process-class" aria-hidden="true">#</a> Process <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Process</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> isNoSuch: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">, </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> throwable: </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">?) : </span><span style="color:#F69D50;">BaseResult</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Constructor</code> 查找结果处理类,为 <code>hookManager</code> 提供。</p></blockquote><h3 id="result-method" tabindex="-1"><a class="header-anchor" href="#result-method" aria-hidden="true">#</a> result <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">Process</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Process</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>创建监听结果事件方法体。</p></blockquote><p><strong>Function Example</strong></p><p>你可以使用 <strong>lambda</strong> 形式创建 <code>Result</code> 类。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchConstructor</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="all-method" tabindex="-1"><a class="header-anchor" href="#all-method" aria-hidden="true">#</a> all <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Process</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置全部查找条件匹配的多个 <code>Constructor</code> 实例结果到 <code>hookManager</code>。</p></blockquote><h3 id="remedys-method" tabindex="-1"><a class="header-anchor" href="#remedys-method" aria-hidden="true">#</a> remedys <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">RemedyPlan</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>创建 <code>Constructor</code> 重查找功能。</p></blockquote><p><strong>Function Example</strong></p><p>当你遇到一种 <code>Constructor</code> 可能存在不同形式的存在时,可以使用 <code>RemedyPlan</code> 重新查找它,而没有必要使用 <code>onNoSuchConstructor</code> 捕获异常二次查找 <code>Constructor</code>。</p><p>若第一次查找失败了,你还可以在这里继续添加此方法体直到成功为止。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="onnosuchconstructor-method" tabindex="-1"><a class="header-anchor" href="#onnosuchconstructor-method" aria-hidden="true">#</a> onNoSuchConstructor <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchConstructor</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>监听找不到 <code>Constructor</code> 时。</p></blockquote><p>只会返回第一次的错误信息,不会返回 <code>RemedyPlan</code> 的错误信息。</p><h2 id="result-class-1" tabindex="-1"><a class="header-anchor" href="#result-class-1" aria-hidden="true">#</a> Result <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> isNoSuch: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">, </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> throwable: </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">?) : </span><span style="color:#F69D50;">BaseResult</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.1.0</code> <code>modified</code></p><p>继承到接口 <code>BaseResult</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Constructor</code> 查找结果实现类。</p></blockquote><h3 id="result-method-1" tabindex="-1"><a class="header-anchor" href="#result-method-1" aria-hidden="true">#</a> result <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.80</code> <code>modified</code></p><p>将方法体进行 inline</p><p><strong>Function Illustrate</strong></p><blockquote><p>创建监听结果事件方法体。</p></blockquote><p><strong>Function Example</strong></p><p>你可以使用 <strong>lambda</strong> 形式创建 <code>Result</code> 类。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">get</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchConstructor</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="get-method" tabindex="-1"><a class="header-anchor" href="#get-method" aria-hidden="true">#</a> get <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Instance</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.2</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得 <code>Constructor</code> 实例处理类。</p></blockquote><p>若有多个 <code>Constructor</code> 结果只会返回第一个。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>若你设置了 <strong>remedys</strong> 请使用 <strong>wait</strong> 回调结果方法。</p></div><p><strong>Function Example</strong></p><p>你可以通过获得方法所在实例来执行构造方法创建新的实例对象。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>你可以 <code>cast</code> 构造方法为指定类型的实例对象。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">newInstance</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">TestClass</span><span style="color:#ADBAC7;">&gt;()</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>若构造方法含有参数则后方参数必填。</p></div><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">newInstance</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">TestClass</span><span style="color:#ADBAC7;">&gt;(</span><span style="color:#96D0FF;">&quot;param1&quot;</span><span style="color:#ADBAC7;">, </span><span style="color:#96D0FF;">&quot;param2&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="all-method-1" tabindex="-1"><a class="header-anchor" href="#all-method-1" aria-hidden="true">#</a> all <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><code>v1.2.0</code> <code>modified</code></p><p>返回值类型由 <code>ArrayList</code> 修改为 <code>MutableList</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得 <code>Constructor</code> 实例处理类数组。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Constructor</code> 实例结果。</p><p><strong>Function Example</strong></p><p>你可以通过此方法来获得当前条件结果中匹配的全部 <code>Constructor</code>。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">forEach</span><span style="color:#ADBAC7;"> { instance </span><span style="color:#F47067;">-&gt;</span></span>
<span class="line"><span style="color:#ADBAC7;"> instance.</span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">..</span><span style="color:#ADBAC7;">.)</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="give-method" tabindex="-1"><a class="header-anchor" href="#give-method" aria-hidden="true">#</a> give <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">give</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Constructor</span><span style="color:#ADBAC7;">&lt;*&gt;?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.67</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到 <code>Constructor</code> 本身。</p></blockquote><p>若有多个 <code>Constructor</code> 结果只会返回第一个。</p><p>在查找条件找不到任何结果的时候将返回 <code>null</code>。</p><h3 id="giveall-method" tabindex="-1"><a class="header-anchor" href="#giveall-method" aria-hidden="true">#</a> giveAll <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">giveAll</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Constructor</span><span style="color:#ADBAC7;">&lt;*&gt;&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><code>v1.2.0</code> <code>modified</code></p><p>返回值类型由 <code>HashSet</code> 修改为 <code>MutableList</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到 <code>Constructor</code> 本身数组。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Constructor</code> 实例。</p><p>在查找条件找不到任何结果的时候将返回空的 <code>MutableList</code>。</p><h3 id="wait-method" tabindex="-1"><a class="header-anchor" href="#wait-method" aria-hidden="true">#</a> wait <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">wait</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.2</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得 <code>Constructor</code> 实例处理类,配合 <code>RemedyPlan</code> 使用。</p></blockquote><p>若有多个 <code>Constructor</code> 结果只会返回第一个。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>若你设置了 <strong>remedys</strong> 必须使用此方法才能获得结果。</p><p>若你没有设置 <strong>remedys</strong> 此方法将不会被回调。</p></div><h3 id="waitall-method" tabindex="-1"><a class="header-anchor" href="#waitall-method" aria-hidden="true">#</a> waitAll <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">waitAll</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">&gt;.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><code>v1.2.0</code> <code>modified</code></p><p><code>initiate</code> 类型由 <code>ArrayList</code> 修改为 <code>MutableList</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得 <code>Constructor</code> 实例处理类数组,配合 <code>RemedyPlan</code> 使用。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Constructor</code> 实例结果。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>若你设置了 <strong>remedys</strong> 必须使用此方法才能获得结果。</p><p>若你没有设置 <strong>remedys</strong> 此方法将不会被回调。</p></div><h3 id="remedys-method-1" tabindex="-1"><a class="header-anchor" href="#remedys-method-1" aria-hidden="true">#</a> remedys <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">RemedyPlan</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.80</code> <code>modified</code></p><p>将方法体进行 inline</p><p><strong>Function Illustrate</strong></p><blockquote><p>创建 <code>Constructor</code> 重查找功能。</p></blockquote><p><strong>Function Example</strong></p><p>当你遇到一种 <code>Constructor</code> 可能存在不同形式的存在时,可以使用 <code>RemedyPlan</code> 重新查找它,而没有必要使用 <code>onNoSuchConstructor</code> 捕获异常二次查找 <code>Constructor</code>。</p><p>若第一次查找失败了,你还可以在这里继续添加此方法体直到成功为止。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="onnosuchconstructor-method-1" tabindex="-1"><a class="header-anchor" href="#onnosuchconstructor-method-1" aria-hidden="true">#</a> onNoSuchConstructor <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchConstructor</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.80</code> <code>modified</code></p><p>将方法体进行 inline</p><p><strong>Function Illustrate</strong></p><blockquote><p>监听找不到 <code>Constructor</code> 时。</p></blockquote><p>只会返回第一次的错误信息,不会返回 <code>RemedyPlan</code> 的错误信息。</p><h3 id="ignored-method" tabindex="-1"><a class="header-anchor" href="#ignored-method" aria-hidden="true">#</a> ignored <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">ignored</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>忽略异常并停止打印任何错误日志。</p></blockquote><p>若 <code>MemberBaseFinder.MemberHookerManager.isNotIgnoredNoSuchMemberFailure</code> 为 <code>false</code> 则自动忽略。</p><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>此时若要监听异常结果,你需要手动实现 <strong>onNoSuchConstructor</strong> 方法。</p></div><h3 class="deprecated">ignoredError - method</h3><p><strong>Change Records</strong></p><p><code>v1.0.3</code> <code>added</code></p><p><code>v1.1.0</code> <code>deprecated</code></p><p>请迁移到新方法 <code>ignored()</code></p><h3 id="instance-class" tabindex="-1"><a class="header-anchor" href="#instance-class" aria-hidden="true">#</a> Instance <span class="symbol">- class</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> constructor: </span><span style="color:#F69D50;">Constructor</span><span style="color:#ADBAC7;">&lt;*&gt;?)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.2</code> <code>added</code></p><p><code>v1.1.0</code> <code>modified</code></p><p>新增 <code>constructor</code> 参数</p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Constructor</code> 实例处理类。</p></blockquote><h4 id="call-method" tabindex="-1"><a class="header-anchor" href="#call-method" aria-hidden="true">#</a> call <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.2</code> <code>added</code></p><p><code>v1.1.6</code> <code>modified</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>执行 <code>Constructor</code> 创建目标实例,不指定目标实例类型。</p></blockquote><h4 id="newinstance-method" tabindex="-1"><a class="header-anchor" href="#newinstance-method" aria-hidden="true">#</a> newInstance <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">newInstance</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.2</code> <code>added</code></p><p><code>v1.1.6</code> <code>modified</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>执行 <code>Constructor</code> 创建目标实例 ,指定 <code>T</code> 目标实例类型。</p></blockquote>`,310),p=[l];function c(t,r){return n(),o("div",null,p)}const i=s(a,[["render",c],["__file","ConstructorFinder.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-1e2cbc9c","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/members/ConstructorFinder.html","title":"ConstructorFinder - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"paramCount - field","slug":"paramcount-field","link":"#paramcount-field","children":[]},{"level":2,"title":"modifiers - method","slug":"modifiers-method","link":"#modifiers-method","children":[]},{"level":2,"title":"emptyParam - method","slug":"emptyparam-method","link":"#emptyparam-method","children":[]},{"level":2,"title":"param - method","slug":"param-method","link":"#param-method","children":[]},{"level":2,"title":"param - method","slug":"param-method-1","link":"#param-method-1","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method","link":"#paramcount-method","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method-1","link":"#paramcount-method-1","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method-2","link":"#paramcount-method-2","children":[]},{"level":2,"title":"superClass - method","slug":"superclass-method","link":"#superclass-method","children":[]},{"level":2,"title":"RemedyPlan - class","slug":"remedyplan-class","link":"#remedyplan-class","children":[{"level":3,"title":"constructor - method","slug":"constructor-method","link":"#constructor-method","children":[]},{"level":3,"title":"Result - class","slug":"result-class","link":"#result-class","children":[]}]},{"level":2,"title":"Process - class","slug":"process-class","link":"#process-class","children":[{"level":3,"title":"result - method","slug":"result-method","link":"#result-method","children":[]},{"level":3,"title":"all - method","slug":"all-method","link":"#all-method","children":[]},{"level":3,"title":"remedys - method","slug":"remedys-method","link":"#remedys-method","children":[]},{"level":3,"title":"onNoSuchConstructor - method","slug":"onnosuchconstructor-method","link":"#onnosuchconstructor-method","children":[]}]},{"level":2,"title":"Result - class","slug":"result-class-1","link":"#result-class-1","children":[{"level":3,"title":"result - method","slug":"result-method-1","link":"#result-method-1","children":[]},{"level":3,"title":"get - method","slug":"get-method","link":"#get-method","children":[]},{"level":3,"title":"all - method","slug":"all-method-1","link":"#all-method-1","children":[]},{"level":3,"title":"give - method","slug":"give-method","link":"#give-method","children":[]},{"level":3,"title":"giveAll - method","slug":"giveall-method","link":"#giveall-method","children":[]},{"level":3,"title":"wait - method","slug":"wait-method","link":"#wait-method","children":[]},{"level":3,"title":"waitAll - method","slug":"waitall-method","link":"#waitall-method","children":[]},{"level":3,"title":"remedys - method","slug":"remedys-method-1","link":"#remedys-method-1","children":[]},{"level":3,"title":"onNoSuchConstructor - method","slug":"onnosuchconstructor-method-1","link":"#onnosuchconstructor-method-1","children":[]},{"level":3,"title":"ignored - method","slug":"ignored-method","link":"#ignored-method","children":[]},{"level":3,"title":"Instance - class","slug":"instance-class","link":"#instance-class","children":[]}]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":10}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/members/ConstructorFinder.md"}');export{e as data};

View File

@@ -0,0 +1,88 @@
import{_ as s,o,c as n,a}from"./app-BpUB8-Q8.js";const e={},l=a(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="constructorfinder-class" tabindex="-1"><a class="header-anchor" href="#constructorfinder-class" aria-hidden="true">#</a> ConstructorFinder <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">ConstructorFinder</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">override</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> classSet: </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;) : </span><span style="color:#F69D50;">MemberBaseFinder</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.2</code> <code>修改</code></p><p>合并到 <code>BaseFinder</code></p><p><code>v1.1.0</code> <code>修改</code></p><p>合并到 <code>MemberBaseFinder</code></p><p><code>v1.1.8</code> <code>修改</code></p><p>移动 <code>hookInstance</code> 参数到 <code>MemberBaseFinder.MemberHookerManager</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Constructor</code> 查找类。</p></blockquote><p>可通过指定类型查找指定 <code>Constructor</code> 或一组 <code>Constructor</code>。</p><h2 id="paramcount-field" tabindex="-1"><a class="header-anchor" href="#paramcount-field" aria-hidden="true">#</a> paramCount <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> paramCount: </span><span style="color:#F69D50;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.67</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Constructor</code> 参数个数。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此变量指定参数个数。</p><p>若参数个数小于零则忽略并使用 <code>param</code>。</p><h2 id="modifiers-method" tabindex="-1"><a class="header-anchor" href="#modifiers-method" aria-hidden="true">#</a> modifiers <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">modifiers</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ModifierConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.67</code> <code>新增</code></p><p><code>v1.0.80</code> <code>修改</code></p><p>将方法体进行 inline</p><p><code>v1.1.0</code> <code>修改</code></p><p>合并到 <code>ModifierConditions</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Constructor</code> 标识符筛选条件。</p></blockquote><p>可不设置筛选条件,默认模糊查找并取第一个匹配的 <code>Constructor</code>。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="emptyparam-method" tabindex="-1"><a class="header-anchor" href="#emptyparam-method" aria-hidden="true">#</a> emptyParam <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">emptyParam</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.75</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Constructor</code> 空参数、无参数。</p></blockquote><h2 id="param-method" tabindex="-1"><a class="header-anchor" href="#param-method" aria-hidden="true">#</a> param <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> paramType: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Constructor</code> 参数。</p></blockquote><p>如果同时使用了 <code>paramCount</code> 则 <code>paramType</code> 的数量必须与 <code>paramCount</code> 完全匹配。</p><p>如果 <code>Constructor</code> 中存在一些无意义又很长的类型,你可以使用 <a href="../../../type/defined/DefinedTypeFactory#vaguetype-field">VagueType</a> 来替代它。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>无参 <strong>Constructor</strong> 请使用 <strong>emptyParam</strong> 设置查找条件。</p><p>有参 <strong>Constructor</strong> 必须使用此方法设定参数或使用 <strong>paramCount</strong> 指定个数。</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="param-method-1" tabindex="-1"><a class="header-anchor" href="#param-method-1" aria-hidden="true">#</a> param <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ObjectsConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.5</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Constructor</code> 参数条件。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>无参 <strong>Constructor</strong> 请使用 <strong>emptyParam</strong> 设置查找条件。</p><p>有参 <strong>Constructor</strong> 必须使用此方法设定参数或使用 <strong>paramCount</strong> 指定个数。</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="paramcount-method" tabindex="-1"><a class="header-anchor" href="#paramcount-method" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(num: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Constructor</code> 参数个数。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数。</p><p>若参数个数小于零则忽略并使用 <code>param</code>。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="paramcount-method-1" tabindex="-1"><a class="header-anchor" href="#paramcount-method-1" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(numRange: </span><span style="color:#F69D50;">IntRange</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Constructor</code> 参数个数范围。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数范围。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="paramcount-method-2" tabindex="-1"><a class="header-anchor" href="#paramcount-method-2" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">CountConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Constructor</code> 参数个数条件。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数条件。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="superclass-method" tabindex="-1"><a class="header-anchor" href="#superclass-method" aria-hidden="true">#</a> superClass <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">superClass</span><span style="color:#ADBAC7;">(isOnlySuperClass: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.80</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置在 <code>classSet</code> 的所有父类中查找当前 <code>Constructor</code>。</p></blockquote><div class="custom-container warning"><p class="custom-container-title">注意</p><p>若当前 <strong>classSet</strong> 的父类较多可能会耗时API 会自动循环到父类继承是 <strong>Any</strong> 前的最后一个类。</p></div><h2 id="remedyplan-class" tabindex="-1"><a class="header-anchor" href="#remedyplan-class" aria-hidden="true">#</a> RemedyPlan <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">RemedyPlan</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Constructor</code> 重查找实现类,可累计失败次数直到查找成功。</p></blockquote><h3 id="constructor-method" tabindex="-1"><a class="header-anchor" href="#constructor-method" aria-hidden="true">#</a> constructor <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">ConstructorConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.80</code> <code>修改</code></p><p>将方法体进行 inline</p><p><strong>功能描述</strong></p><blockquote><p>创建需要重新查找的 <code>Constructor</code>。</p></blockquote><p>你可以添加多个备选 <code>Constructor</code>,直到成功为止,若最后依然失败,将停止查找并输出错误日志。</p><h3 id="result-class" tabindex="-1"><a class="header-anchor" href="#result-class" aria-hidden="true">#</a> Result <span class="symbol">- class</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.1</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p><code>RemedyPlan</code> 结果实现类。</p></blockquote><h4 id="onfind-method" tabindex="-1"><a class="header-anchor" href="#onfind-method" aria-hidden="true">#</a> onFind <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onFind</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Constructor</span><span style="color:#ADBAC7;">&lt;*&gt;&gt;.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.1</code> <code>新增</code></p><p><code>v1.1.0</code> <code>修改</code></p><p><code>initiate</code> 参数 <code>Constructor</code> 变为 <code>HashSet&lt;Constructor&gt;</code></p><p><code>v1.2.0</code> <code>修改</code></p><p><code>initiate</code> 类型由 <code>HashSet</code> 修改为 <code>MutableList</code></p><p><strong>功能描述</strong></p><blockquote><p>当在 <code>RemedyPlan</code> 中找到结果时。</p></blockquote><p><strong>功能示例</strong></p><p>你可以方便地对重查找的 <code>Constructor</code> 实现 <code>onFind</code> 方法。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">onFind</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="process-class" tabindex="-1"><a class="header-anchor" href="#process-class" aria-hidden="true">#</a> Process <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Process</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> isNoSuch: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">, </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> throwable: </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">?) : </span><span style="color:#F69D50;">BaseResult</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Constructor</code> 查找结果处理类,为 <code>hookManager</code> 提供。</p></blockquote><h3 id="result-method" tabindex="-1"><a class="header-anchor" href="#result-method" aria-hidden="true">#</a> result <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">Process</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Process</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>创建监听结果事件方法体。</p></blockquote><p><strong>功能示例</strong></p><p>你可以使用 <strong>lambda</strong> 形式创建 <code>Result</code> 类。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchConstructor</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="all-method" tabindex="-1"><a class="header-anchor" href="#all-method" aria-hidden="true">#</a> all <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Process</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置全部查找条件匹配的多个 <code>Constructor</code> 实例结果到 <code>hookManager</code>。</p></blockquote><h3 id="remedys-method" tabindex="-1"><a class="header-anchor" href="#remedys-method" aria-hidden="true">#</a> remedys <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">RemedyPlan</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>创建 <code>Constructor</code> 重查找功能。</p></blockquote><p><strong>功能示例</strong></p><p>当你遇到一种 <code>Constructor</code> 可能存在不同形式的存在时,可以使用 <code>RemedyPlan</code> 重新查找它,而没有必要使用 <code>onNoSuchConstructor</code> 捕获异常二次查找 <code>Constructor</code>。</p><p>若第一次查找失败了,你还可以在这里继续添加此方法体直到成功为止。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="onnosuchconstructor-method" tabindex="-1"><a class="header-anchor" href="#onnosuchconstructor-method" aria-hidden="true">#</a> onNoSuchConstructor <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchConstructor</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>监听找不到 <code>Constructor</code> 时。</p></blockquote><p>只会返回第一次的错误信息,不会返回 <code>RemedyPlan</code> 的错误信息。</p><h2 id="result-class-1" tabindex="-1"><a class="header-anchor" href="#result-class-1" aria-hidden="true">#</a> Result <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> isNoSuch: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">, </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> throwable: </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">?) : </span><span style="color:#F69D50;">BaseResult</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.1.0</code> <code>修改</code></p><p>继承到接口 <code>BaseResult</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Constructor</code> 查找结果实现类。</p></blockquote><h3 id="result-method-1" tabindex="-1"><a class="header-anchor" href="#result-method-1" aria-hidden="true">#</a> result <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.80</code> <code>修改</code></p><p>将方法体进行 inline</p><p><strong>功能描述</strong></p><blockquote><p>创建监听结果事件方法体。</p></blockquote><p><strong>功能示例</strong></p><p>你可以使用 <strong>lambda</strong> 形式创建 <code>Result</code> 类。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">get</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchConstructor</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="get-method" tabindex="-1"><a class="header-anchor" href="#get-method" aria-hidden="true">#</a> get <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Instance</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.2</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获得 <code>Constructor</code> 实例处理类。</p></blockquote><p>若有多个 <code>Constructor</code> 结果只会返回第一个。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>若你设置了 <strong>remedys</strong> 请使用 <strong>wait</strong> 回调结果方法。</p></div><p><strong>功能示例</strong></p><p>你可以通过获得方法所在实例来执行构造方法创建新的实例对象。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>你可以 <code>cast</code> 构造方法为指定类型的实例对象。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">newInstance</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">TestClass</span><span style="color:#ADBAC7;">&gt;()</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>若构造方法含有参数则后方参数必填。</p></div><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">newInstance</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">TestClass</span><span style="color:#ADBAC7;">&gt;(</span><span style="color:#96D0FF;">&quot;param1&quot;</span><span style="color:#ADBAC7;">, </span><span style="color:#96D0FF;">&quot;param2&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="all-method-1" tabindex="-1"><a class="header-anchor" href="#all-method-1" aria-hidden="true">#</a> all <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><code>v1.2.0</code> <code>修改</code></p><p>返回值类型由 <code>ArrayList</code> 修改为 <code>MutableList</code></p><p><strong>功能描述</strong></p><blockquote><p>获得 <code>Constructor</code> 实例处理类数组。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Constructor</code> 实例结果。</p><p><strong>功能示例</strong></p><p>你可以通过此方法来获得当前条件结果中匹配的全部 <code>Constructor</code>。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">forEach</span><span style="color:#ADBAC7;"> { instance </span><span style="color:#F47067;">-&gt;</span></span>
<span class="line"><span style="color:#ADBAC7;"> instance.</span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">..</span><span style="color:#ADBAC7;">.)</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="give-method" tabindex="-1"><a class="header-anchor" href="#give-method" aria-hidden="true">#</a> give <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">give</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Constructor</span><span style="color:#ADBAC7;">&lt;*&gt;?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.67</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>得到 <code>Constructor</code> 本身。</p></blockquote><p>若有多个 <code>Constructor</code> 结果只会返回第一个。</p><p>在查找条件找不到任何结果的时候将返回 <code>null</code>。</p><h3 id="giveall-method" tabindex="-1"><a class="header-anchor" href="#giveall-method" aria-hidden="true">#</a> giveAll <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">giveAll</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Constructor</span><span style="color:#ADBAC7;">&lt;*&gt;&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><code>v1.2.0</code> <code>修改</code></p><p>返回值类型由 <code>HashSet</code> 修改为 <code>MutableList</code></p><p><strong>功能描述</strong></p><blockquote><p>得到 <code>Constructor</code> 本身数组。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Constructor</code> 实例。</p><p>在查找条件找不到任何结果的时候将返回空的 <code>MutableList</code>。</p><h3 id="wait-method" tabindex="-1"><a class="header-anchor" href="#wait-method" aria-hidden="true">#</a> wait <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">wait</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.2</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获得 <code>Constructor</code> 实例处理类,配合 <code>RemedyPlan</code> 使用。</p></blockquote><p>若有多个 <code>Constructor</code> 结果只会返回第一个。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>若你设置了 <strong>remedys</strong> 必须使用此方法才能获得结果。</p><p>若你没有设置 <strong>remedys</strong> 此方法将不会被回调。</p></div><h3 id="waitall-method" tabindex="-1"><a class="header-anchor" href="#waitall-method" aria-hidden="true">#</a> waitAll <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">waitAll</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">&gt;.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><code>v1.2.0</code> <code>修改</code></p><p><code>initiate</code> 类型由 <code>ArrayList</code> 修改为 <code>MutableList</code></p><p><strong>功能描述</strong></p><blockquote><p>获得 <code>Constructor</code> 实例处理类数组,配合 <code>RemedyPlan</code> 使用。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Constructor</code> 实例结果。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>若你设置了 <strong>remedys</strong> 必须使用此方法才能获得结果。</p><p>若你没有设置 <strong>remedys</strong> 此方法将不会被回调。</p></div><h3 id="remedys-method-1" tabindex="-1"><a class="header-anchor" href="#remedys-method-1" aria-hidden="true">#</a> remedys <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">RemedyPlan</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.80</code> <code>修改</code></p><p>将方法体进行 inline</p><p><strong>功能描述</strong></p><blockquote><p>创建 <code>Constructor</code> 重查找功能。</p></blockquote><p><strong>功能示例</strong></p><p>当你遇到一种 <code>Constructor</code> 可能存在不同形式的存在时,可以使用 <code>RemedyPlan</code> 重新查找它,而没有必要使用 <code>onNoSuchConstructor</code> 捕获异常二次查找 <code>Constructor</code>。</p><p>若第一次查找失败了,你还可以在这里继续添加此方法体直到成功为止。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="onnosuchconstructor-method-1" tabindex="-1"><a class="header-anchor" href="#onnosuchconstructor-method-1" aria-hidden="true">#</a> onNoSuchConstructor <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchConstructor</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.80</code> <code>修改</code></p><p>将方法体进行 inline</p><p><strong>功能描述</strong></p><blockquote><p>监听找不到 <code>Constructor</code> 时。</p></blockquote><p>只会返回第一次的错误信息,不会返回 <code>RemedyPlan</code> 的错误信息。</p><h3 id="ignored-method" tabindex="-1"><a class="header-anchor" href="#ignored-method" aria-hidden="true">#</a> ignored <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">ignored</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>忽略异常并停止打印任何错误日志。</p></blockquote><p>若 <code>MemberBaseFinder.MemberHookerManager.isNotIgnoredNoSuchMemberFailure</code> 为 <code>false</code> 则自动忽略。</p><div class="custom-container warning"><p class="custom-container-title">注意</p><p>此时若要监听异常结果,你需要手动实现 <strong>onNoSuchConstructor</strong> 方法。</p></div><h3 class="deprecated">ignoredError - method</h3><p><strong>变更记录</strong></p><p><code>v1.0.3</code> <code>新增</code></p><p><code>v1.1.0</code> <code>作废</code></p><p>请迁移到新方法 <code>ignored()</code></p><h3 id="instance-class" tabindex="-1"><a class="header-anchor" href="#instance-class" aria-hidden="true">#</a> Instance <span class="symbol">- class</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> constructor: </span><span style="color:#F69D50;">Constructor</span><span style="color:#ADBAC7;">&lt;*&gt;?)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.2</code> <code>新增</code></p><p><code>v1.1.0</code> <code>修改</code></p><p>新增 <code>constructor</code> 参数</p><p><strong>功能描述</strong></p><blockquote><p><code>Constructor</code> 实例处理类。</p></blockquote><h4 id="call-method" tabindex="-1"><a class="header-anchor" href="#call-method" aria-hidden="true">#</a> call <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.2</code> <code>新增</code></p><p><code>v1.1.6</code> <code>修改</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>功能描述</strong></p><blockquote><p>执行 <code>Constructor</code> 创建目标实例,不指定目标实例类型。</p></blockquote><h4 id="newinstance-method" tabindex="-1"><a class="header-anchor" href="#newinstance-method" aria-hidden="true">#</a> newInstance <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">newInstance</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.2</code> <code>新增</code></p><p><code>v1.1.6</code> <code>修改</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>功能描述</strong></p><blockquote><p>执行 <code>Constructor</code> 创建目标实例 ,指定 <code>T</code> 目标实例类型。</p></blockquote>`,309),p=[l];function c(t,r){return o(),n("div",null,p)}const i=s(e,[["render",c],["__file","ConstructorFinder.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-a71937aa","path":"/en/api/public/com/highcapable/yukihookapi/hook/core/finder/members/ConstructorFinder.html","title":"ConstructorFinder - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"paramCount - field","slug":"paramcount-field","link":"#paramcount-field","children":[]},{"level":2,"title":"modifiers - method","slug":"modifiers-method","link":"#modifiers-method","children":[]},{"level":2,"title":"emptyParam - method","slug":"emptyparam-method","link":"#emptyparam-method","children":[]},{"level":2,"title":"param - method","slug":"param-method","link":"#param-method","children":[]},{"level":2,"title":"param - method","slug":"param-method-1","link":"#param-method-1","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method","link":"#paramcount-method","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method-1","link":"#paramcount-method-1","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method-2","link":"#paramcount-method-2","children":[]},{"level":2,"title":"superClass - method","slug":"superclass-method","link":"#superclass-method","children":[]},{"level":2,"title":"RemedyPlan - class","slug":"remedyplan-class","link":"#remedyplan-class","children":[{"level":3,"title":"constructor - method","slug":"constructor-method","link":"#constructor-method","children":[]},{"level":3,"title":"Result - class","slug":"result-class","link":"#result-class","children":[]}]},{"level":2,"title":"Process - class","slug":"process-class","link":"#process-class","children":[{"level":3,"title":"result - method","slug":"result-method","link":"#result-method","children":[]},{"level":3,"title":"all - method","slug":"all-method","link":"#all-method","children":[]},{"level":3,"title":"remedys - method","slug":"remedys-method","link":"#remedys-method","children":[]},{"level":3,"title":"onNoSuchConstructor - method","slug":"onnosuchconstructor-method","link":"#onnosuchconstructor-method","children":[]}]},{"level":2,"title":"Result - class","slug":"result-class-1","link":"#result-class-1","children":[{"level":3,"title":"result - method","slug":"result-method-1","link":"#result-method-1","children":[]},{"level":3,"title":"get - method","slug":"get-method","link":"#get-method","children":[]},{"level":3,"title":"all - method","slug":"all-method-1","link":"#all-method-1","children":[]},{"level":3,"title":"give - method","slug":"give-method","link":"#give-method","children":[]},{"level":3,"title":"giveAll - method","slug":"giveall-method","link":"#giveall-method","children":[]},{"level":3,"title":"wait - method","slug":"wait-method","link":"#wait-method","children":[]},{"level":3,"title":"waitAll - method","slug":"waitall-method","link":"#waitall-method","children":[]},{"level":3,"title":"remedys - method","slug":"remedys-method-1","link":"#remedys-method-1","children":[]},{"level":3,"title":"onNoSuchConstructor - method","slug":"onnosuchconstructor-method-1","link":"#onnosuchconstructor-method-1","children":[]},{"level":3,"title":"ignored - method","slug":"ignored-method","link":"#ignored-method","children":[]},{"level":3,"title":"Instance - class","slug":"instance-class","link":"#instance-class","children":[]}]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":9}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/core/finder/members/ConstructorFinder.md"}');export{e as data};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-08b70f7f","path":"/en/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/ConstructorRules.html","title":"ConstructorRules - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"paramCount - field","slug":"paramcount-field","link":"#paramcount-field","children":[]},{"level":2,"title":"modifiers - method","slug":"modifiers-method","link":"#modifiers-method","children":[]},{"level":2,"title":"emptyParam - method","slug":"emptyparam-method","link":"#emptyparam-method","children":[]},{"level":2,"title":"param - method","slug":"param-method","link":"#param-method","children":[]},{"level":2,"title":"param - method","slug":"param-method-1","link":"#param-method-1","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method","link":"#paramcount-method","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method-1","link":"#paramcount-method-1","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":4}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/ConstructorRules.md"}');export{e as data};

View File

@@ -0,0 +1,9 @@
import{_ as o,o as s,c as a,a as e}from"./app-BpUB8-Q8.js";const n={},t=e(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="constructorrules-class" tabindex="-1"><a class="header-anchor" href="#constructorrules-class" aria-hidden="true">#</a> ConstructorRules <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">ConstructorRules</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> rulesData: </span><span style="color:#F69D50;">ConstructorRulesData</span><span style="color:#ADBAC7;">) : </span><span style="color:#F69D50;">BaseRules</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Constructor</code> 查找条件实现类。</p></blockquote><h2 id="paramcount-field" tabindex="-1"><a class="header-anchor" href="#paramcount-field" aria-hidden="true">#</a> paramCount <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> paramCount: </span><span style="color:#F69D50;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Constructor</code> 参数个数。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此变量指定参数个数。</p><p>若参数个数小于零则忽略并使用 <code>param</code>。</p><h2 id="modifiers-method" tabindex="-1"><a class="header-anchor" href="#modifiers-method" aria-hidden="true">#</a> modifiers <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">modifiers</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ModifierConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Constructor</code> 标识符筛选条件。</p></blockquote><p>可不设置筛选条件。</p><h2 id="emptyparam-method" tabindex="-1"><a class="header-anchor" href="#emptyparam-method" aria-hidden="true">#</a> emptyParam <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">emptyParam</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Constructor</code> 空参数、无参数。</p></blockquote><h2 id="param-method" tabindex="-1"><a class="header-anchor" href="#param-method" aria-hidden="true">#</a> param <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> paramType: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Constructor</code> 参数。</p></blockquote><p>如果同时使用了 <code>paramCount</code> 则 <code>paramType</code> 的数量必须与 <code>paramCount</code> 完全匹配。</p><p>如果 <code>Constructor</code> 中存在一些无意义又很长的类型,你可以使用 <code>VagueType</code> 来替代它。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>无参 <strong>Constructor</strong> 请使用 <strong>emptyParam</strong> 设置查找条件。</p><p>有参 <strong>Constructor</strong> 必须使用此方法设定参数或使用 <strong>paramCount</strong> 指定个数。</p></div><h2 id="param-method-1" tabindex="-1"><a class="header-anchor" href="#param-method-1" aria-hidden="true">#</a> param <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ObjectsConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.5</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Constructor</code> 参数条件。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>无参 <strong>Constructor</strong> 请使用 <strong>emptyParam</strong> 设置查找条件。</p><p>有参 <strong>Constructor</strong> 必须使用此方法设定参数或使用 <strong>paramCount</strong> 指定个数。</p></div><h2 id="paramcount-method" tabindex="-1"><a class="header-anchor" href="#paramcount-method" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(numRange: </span><span style="color:#F69D50;">IntRange</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Constructor</code> 参数个数范围。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数范围。</p><h2 id="paramcount-method-1" tabindex="-1"><a class="header-anchor" href="#paramcount-method-1" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">CountConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Constructor</code> 参数个数条件。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数条件。</p>`,59),c=[t];function r(p,l){return s(),a("div",null,c)}const i=o(n,[["render",r],["__file","ConstructorRules.html.vue"]]);export{i as default};

View File

@@ -0,0 +1,9 @@
import{_ as s,o,c as a,a as n}from"./app-BpUB8-Q8.js";const e={},t=n(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="constructorrules-class" tabindex="-1"><a class="header-anchor" href="#constructorrules-class" aria-hidden="true">#</a> ConstructorRules <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">ConstructorRules</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> rulesData: </span><span style="color:#F69D50;">ConstructorRulesData</span><span style="color:#ADBAC7;">) : </span><span style="color:#F69D50;">BaseRules</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Constructor</code> 查找条件实现类。</p></blockquote><h2 id="paramcount-field" tabindex="-1"><a class="header-anchor" href="#paramcount-field" aria-hidden="true">#</a> paramCount <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> paramCount: </span><span style="color:#F69D50;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Constructor</code> 参数个数。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此变量指定参数个数。</p><p>若参数个数小于零则忽略并使用 <code>param</code>。</p><h2 id="modifiers-method" tabindex="-1"><a class="header-anchor" href="#modifiers-method" aria-hidden="true">#</a> modifiers <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">modifiers</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ModifierConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Constructor</code> 标识符筛选条件。</p></blockquote><p>可不设置筛选条件。</p><h2 id="emptyparam-method" tabindex="-1"><a class="header-anchor" href="#emptyparam-method" aria-hidden="true">#</a> emptyParam <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">emptyParam</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Constructor</code> 空参数、无参数。</p></blockquote><h2 id="param-method" tabindex="-1"><a class="header-anchor" href="#param-method" aria-hidden="true">#</a> param <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> paramType: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Constructor</code> 参数。</p></blockquote><p>如果同时使用了 <code>paramCount</code> 则 <code>paramType</code> 的数量必须与 <code>paramCount</code> 完全匹配。</p><p>如果 <code>Constructor</code> 中存在一些无意义又很长的类型,你可以使用 <code>VagueType</code> 来替代它。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>无参 <strong>Constructor</strong> 请使用 <strong>emptyParam</strong> 设置查找条件。</p><p>有参 <strong>Constructor</strong> 必须使用此方法设定参数或使用 <strong>paramCount</strong> 指定个数。</p></div><h2 id="param-method-1" tabindex="-1"><a class="header-anchor" href="#param-method-1" aria-hidden="true">#</a> param <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ObjectsConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.5</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Constructor</code> 参数条件。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>无参 <strong>Constructor</strong> 请使用 <strong>emptyParam</strong> 设置查找条件。</p><p>有参 <strong>Constructor</strong> 必须使用此方法设定参数或使用 <strong>paramCount</strong> 指定个数。</p></div><h2 id="paramcount-method" tabindex="-1"><a class="header-anchor" href="#paramcount-method" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(numRange: </span><span style="color:#F69D50;">IntRange</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Constructor</code> 参数个数范围。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数范围。</p><h2 id="paramcount-method-1" tabindex="-1"><a class="header-anchor" href="#paramcount-method-1" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">CountConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Constructor</code> 参数个数条件。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数条件。</p>`,58),p=[t];function c(r,l){return o(),a("div",null,p)}const i=s(e,[["render",c],["__file","ConstructorRules.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-a42f54a4","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/ConstructorRules.html","title":"ConstructorRules - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"paramCount - field","slug":"paramcount-field","link":"#paramcount-field","children":[]},{"level":2,"title":"modifiers - method","slug":"modifiers-method","link":"#modifiers-method","children":[]},{"level":2,"title":"emptyParam - method","slug":"emptyparam-method","link":"#emptyparam-method","children":[]},{"level":2,"title":"param - method","slug":"param-method","link":"#param-method","children":[]},{"level":2,"title":"param - method","slug":"param-method-1","link":"#param-method-1","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method","link":"#paramcount-method","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method-1","link":"#paramcount-method-1","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":5}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/ConstructorRules.md"}');export{e as data};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-1b2ad030","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/base/rules/CountRules.html","title":"CountRules - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"Int.isZero - i-ext-method","slug":"int-iszero-i-ext-method","link":"#int-iszero-i-ext-method","children":[]},{"level":2,"title":"Int.moreThan - i-ext-method","slug":"int-morethan-i-ext-method","link":"#int-morethan-i-ext-method","children":[]},{"level":2,"title":"Int.lessThan - i-ext-method","slug":"int-lessthan-i-ext-method","link":"#int-lessthan-i-ext-method","children":[]},{"level":2,"title":"Int.inInterval - i-ext-method","slug":"int-ininterval-i-ext-method","link":"#int-ininterval-i-ext-method","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":2}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/base/rules/CountRules.md"}');export{e as data};

View File

@@ -0,0 +1,6 @@
import{_ as s,o as e,c as n,a as o}from"./app-BpUB8-Q8.js";const a={},t=o(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="countrules-class" tabindex="-1"><a class="header-anchor" href="#countrules-class" aria-hidden="true">#</a> CountRules <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">CountRules</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>这是一个模糊 <code>Class</code>、<code>Member</code> 数组 (下标) 个数条件实现类。</p></blockquote><p>可对 R8 混淆后的 <code>Class</code>、<code>Member</code> 进行更加详细的定位。</p><h2 id="int-iszero-i-ext-method" tabindex="-1"><a class="header-anchor" href="#int-iszero-i-ext-method" aria-hidden="true">#</a> Int.isZero <span class="symbol">- i-ext-method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">.</span><span style="color:#DCBDFB;">isZero</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>是否为 0。</p></blockquote><h2 id="int-morethan-i-ext-method" tabindex="-1"><a class="header-anchor" href="#int-morethan-i-ext-method" aria-hidden="true">#</a> Int.moreThan <span class="symbol">- i-ext-method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">.</span><span style="color:#DCBDFB;">moreThan</span><span style="color:#ADBAC7;">(count: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>大于 <code>count</code>。</p></blockquote><h2 id="int-lessthan-i-ext-method" tabindex="-1"><a class="header-anchor" href="#int-lessthan-i-ext-method" aria-hidden="true">#</a> Int.lessThan <span class="symbol">- i-ext-method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">.</span><span style="color:#DCBDFB;">lessThan</span><span style="color:#ADBAC7;">(count: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>小于 <code>count</code>。</p></blockquote><h2 id="int-ininterval-i-ext-method" tabindex="-1"><a class="header-anchor" href="#int-ininterval-i-ext-method" aria-hidden="true">#</a> Int.inInterval <span class="symbol">- i-ext-method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">.</span><span style="color:#DCBDFB;">inInterval</span><span style="color:#ADBAC7;">(countRange: </span><span style="color:#F69D50;">IntRange</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>在 <code>countRange</code> 区间 A ≤ this ≤ B。</p></blockquote>`,33),l=[t];function c(p,r){return e(),n("div",null,l)}const i=s(a,[["render",c],["__file","CountRules.html.vue"]]);export{i as default};

View File

@@ -0,0 +1,6 @@
import{_ as s,o,c as e,a as n}from"./app-BpUB8-Q8.js";const a={},t=n(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="countrules-class" tabindex="-1"><a class="header-anchor" href="#countrules-class" aria-hidden="true">#</a> CountRules <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">CountRules</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>这是一个模糊 <code>Class</code>、<code>Member</code> 数组 (下标) 个数条件实现类。</p></blockquote><p>可对 R8 混淆后的 <code>Class</code>、<code>Member</code> 进行更加详细的定位。</p><h2 id="int-iszero-i-ext-method" tabindex="-1"><a class="header-anchor" href="#int-iszero-i-ext-method" aria-hidden="true">#</a> Int.isZero <span class="symbol">- i-ext-method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">.</span><span style="color:#DCBDFB;">isZero</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>是否为 0。</p></blockquote><h2 id="int-morethan-i-ext-method" tabindex="-1"><a class="header-anchor" href="#int-morethan-i-ext-method" aria-hidden="true">#</a> Int.moreThan <span class="symbol">- i-ext-method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">.</span><span style="color:#DCBDFB;">moreThan</span><span style="color:#ADBAC7;">(count: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>大于 <code>count</code>。</p></blockquote><h2 id="int-lessthan-i-ext-method" tabindex="-1"><a class="header-anchor" href="#int-lessthan-i-ext-method" aria-hidden="true">#</a> Int.lessThan <span class="symbol">- i-ext-method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">.</span><span style="color:#DCBDFB;">lessThan</span><span style="color:#ADBAC7;">(count: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>小于 <code>count</code>。</p></blockquote><h2 id="int-ininterval-i-ext-method" tabindex="-1"><a class="header-anchor" href="#int-ininterval-i-ext-method" aria-hidden="true">#</a> Int.inInterval <span class="symbol">- i-ext-method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">.</span><span style="color:#DCBDFB;">inInterval</span><span style="color:#ADBAC7;">(countRange: </span><span style="color:#F69D50;">IntRange</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>在 <code>countRange</code> 区间 A ≤ this ≤ B。</p></blockquote>`,32),l=[t];function c(p,r){return o(),e("div",null,l)}const i=s(a,[["render",c],["__file","CountRules.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-52995ef7","path":"/en/api/public/com/highcapable/yukihookapi/hook/core/finder/base/rules/CountRules.html","title":"CountRules - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"Int.isZero - i-ext-method","slug":"int-iszero-i-ext-method","link":"#int-iszero-i-ext-method","children":[]},{"level":2,"title":"Int.moreThan - i-ext-method","slug":"int-morethan-i-ext-method","link":"#int-morethan-i-ext-method","children":[]},{"level":2,"title":"Int.lessThan - i-ext-method","slug":"int-lessthan-i-ext-method","link":"#int-lessthan-i-ext-method","children":[]},{"level":2,"title":"Int.inInterval - i-ext-method","slug":"int-ininterval-i-ext-method","link":"#int-ininterval-i-ext-method","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":2}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/core/finder/base/rules/CountRules.md"}');export{e as data};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-b6a815c4","path":"/en/api/public/com/highcapable/yukihookapi/hook/bean/CurrentClass.html","title":"CurrentClass - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"name - field","slug":"name-field","link":"#name-field","children":[]},{"level":2,"title":"simpleName - field","slug":"simplename-field","link":"#simplename-field","children":[]},{"level":2,"title":"generic - method","slug":"generic-method","link":"#generic-method","children":[]},{"level":2,"title":"generic - method","slug":"generic-method-1","link":"#generic-method-1","children":[]},{"level":2,"title":"superClass - method","slug":"superclass-method","link":"#superclass-method","children":[]},{"level":2,"title":"field - method","slug":"field-method","link":"#field-method","children":[]},{"level":2,"title":"method - method","slug":"method-method","link":"#method-method","children":[]},{"level":2,"title":"SuperClass - class","slug":"superclass-class","link":"#superclass-class","children":[{"level":3,"title":"name - field","slug":"name-field-1","link":"#name-field-1","children":[]},{"level":3,"title":"simpleName - field","slug":"simplename-field-1","link":"#simplename-field-1","children":[]},{"level":3,"title":"generic - method","slug":"generic-method-2","link":"#generic-method-2","children":[]},{"level":3,"title":"generic - method","slug":"generic-method-3","link":"#generic-method-3","children":[]},{"level":3,"title":"field - method","slug":"field-method-1","link":"#field-method-1","children":[]},{"level":3,"title":"method - method","slug":"method-method-1","link":"#method-method-1","children":[]}]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":3}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/bean/CurrentClass.md"}');export{e as data};

View File

@@ -0,0 +1,16 @@
import{_ as s,o as e,c as a,a as n}from"./app-BpUB8-Q8.js";const o={},l=n(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="currentclass-class" tabindex="-1"><a class="header-anchor" href="#currentclass-class" aria-hidden="true">#</a> CurrentClass <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">CurrentClass</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> classSet: </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;, </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><code>v1.1.0</code> <code>modified</code></p><p>调整了构造方法的参数名称</p><p><strong>Function Illustrate</strong></p><blockquote><p>当前实例的类操作对象。</p></blockquote><h2 id="name-field" tabindex="-1"><a class="header-anchor" href="#name-field" aria-hidden="true">#</a> name <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得当前 <code>classSet</code> 的 <code>Class.getName</code>。</p></blockquote><h2 id="simplename-field" tabindex="-1"><a class="header-anchor" href="#simplename-field" aria-hidden="true">#</a> simpleName <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> simpleName: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得当前 <code>classSet</code> 的 <code>Class.getSimpleName</code>。</p></blockquote><h2 id="generic-method" tabindex="-1"><a class="header-anchor" href="#generic-method" aria-hidden="true">#</a> generic <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">generic</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">GenericClass</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得当前实例中的泛型父类。</p></blockquote><p>如果当前实例不存在泛型将返回 <code>null</code>。</p><h2 id="generic-method-1" tabindex="-1"><a class="header-anchor" href="#generic-method-1" aria-hidden="true">#</a> generic <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">generic</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">GenericClass</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">GenericClass</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得当前实例中的泛型父类。</p></blockquote><p>如果当前实例不存在泛型将返回 <code>null</code>。</p><h2 id="superclass-method" tabindex="-1"><a class="header-anchor" href="#superclass-method" aria-hidden="true">#</a> superClass <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">superClass</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">SuperClass</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.80</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>调用父类实例。</p></blockquote><h2 id="field-method" tabindex="-1"><a class="header-anchor" href="#field-method" aria-hidden="true">#</a> field <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">field</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">FieldConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">FieldFinder</span><span style="color:#ADBAC7;">.Result.Instance</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>调用当前实例中的变量。</p></blockquote><h2 id="method-method" tabindex="-1"><a class="header-anchor" href="#method-method" aria-hidden="true">#</a> method <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MethodConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">MethodFinder</span><span style="color:#ADBAC7;">.Result.Instance</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>调用当前实例中的方法。</p></blockquote><h2 id="superclass-class" tabindex="-1"><a class="header-anchor" href="#superclass-class" aria-hidden="true">#</a> SuperClass <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">SuperClass</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> superClassSet: </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.80</code> <code>added</code></p><p><code>v1.1.0</code> <code>modified</code></p><p>新增 <code>superClassSet</code> 参数</p><p><strong>Function Illustrate</strong></p><blockquote><p>当前类的父类实例的类操作对象。</p></blockquote><h3 id="name-field-1" tabindex="-1"><a class="header-anchor" href="#name-field-1" aria-hidden="true">#</a> name <span class="symbol">- field</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得当前 <code>classSet</code> 中父类的 <code>Class.getName</code>。</p></blockquote><h3 id="simplename-field-1" tabindex="-1"><a class="header-anchor" href="#simplename-field-1" aria-hidden="true">#</a> simpleName <span class="symbol">- field</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> simpleName: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得当前 <code>classSet</code> 中父类的 <code>Class.getSimpleName</code>。</p></blockquote><h3 id="generic-method-2" tabindex="-1"><a class="header-anchor" href="#generic-method-2" aria-hidden="true">#</a> generic <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">generic</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">GenericClass</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得当前实例父类中的泛型父类。</p></blockquote><p>如果当前实例不存在泛型将返回 <code>null</code>。</p><h3 id="generic-method-3" tabindex="-1"><a class="header-anchor" href="#generic-method-3" aria-hidden="true">#</a> generic <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">generic</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">GenericClass</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">GenericClass</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得当前实例父类中的泛型父类。</p></blockquote><p>如果当前实例不存在泛型将返回 <code>null</code>。</p><h3 id="field-method-1" tabindex="-1"><a class="header-anchor" href="#field-method-1" aria-hidden="true">#</a> field <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">field</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">FieldConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">FieldFinder</span><span style="color:#ADBAC7;">.Result.Instance</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.80</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>调用父类实例中的变量。</p></blockquote><h3 id="method-method-1" tabindex="-1"><a class="header-anchor" href="#method-method-1" aria-hidden="true">#</a> method <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MethodConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">MethodFinder</span><span style="color:#ADBAC7;">.Result.Instance</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.80</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>调用父类实例中的方法。</p></blockquote>`,100),t=[l];function p(c,d){return e(),a("div",null,t)}const i=s(o,[["render",p],["__file","CurrentClass.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-6e47300f","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/bean/CurrentClass.html","title":"CurrentClass - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"name - field","slug":"name-field","link":"#name-field","children":[]},{"level":2,"title":"simpleName - field","slug":"simplename-field","link":"#simplename-field","children":[]},{"level":2,"title":"generic - method","slug":"generic-method","link":"#generic-method","children":[]},{"level":2,"title":"generic - method","slug":"generic-method-1","link":"#generic-method-1","children":[]},{"level":2,"title":"superClass - method","slug":"superclass-method","link":"#superclass-method","children":[]},{"level":2,"title":"field - method","slug":"field-method","link":"#field-method","children":[]},{"level":2,"title":"method - method","slug":"method-method","link":"#method-method","children":[]},{"level":2,"title":"SuperClass - class","slug":"superclass-class","link":"#superclass-class","children":[{"level":3,"title":"name - field","slug":"name-field-1","link":"#name-field-1","children":[]},{"level":3,"title":"simpleName - field","slug":"simplename-field-1","link":"#simplename-field-1","children":[]},{"level":3,"title":"generic - method","slug":"generic-method-2","link":"#generic-method-2","children":[]},{"level":3,"title":"generic - method","slug":"generic-method-3","link":"#generic-method-3","children":[]},{"level":3,"title":"field - method","slug":"field-method-1","link":"#field-method-1","children":[]},{"level":3,"title":"method - method","slug":"method-method-1","link":"#method-method-1","children":[]}]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":5}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/bean/CurrentClass.md"}');export{e as data};

View File

@@ -0,0 +1,16 @@
import{_ as s,o as a,c as e,a as n}from"./app-BpUB8-Q8.js";const o={},l=n(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="currentclass-class" tabindex="-1"><a class="header-anchor" href="#currentclass-class" aria-hidden="true">#</a> CurrentClass <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">CurrentClass</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> classSet: </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;, </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><code>v1.1.0</code> <code>修改</code></p><p>调整了构造方法的参数名称</p><p><strong>功能描述</strong></p><blockquote><p>当前实例的类操作对象。</p></blockquote><h2 id="name-field" tabindex="-1"><a class="header-anchor" href="#name-field" aria-hidden="true">#</a> name <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获得当前 <code>classSet</code> 的 <code>Class.getName</code>。</p></blockquote><h2 id="simplename-field" tabindex="-1"><a class="header-anchor" href="#simplename-field" aria-hidden="true">#</a> simpleName <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> simpleName: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获得当前 <code>classSet</code> 的 <code>Class.getSimpleName</code>。</p></blockquote><h2 id="generic-method" tabindex="-1"><a class="header-anchor" href="#generic-method" aria-hidden="true">#</a> generic <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">generic</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">GenericClass</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获得当前实例中的泛型父类。</p></blockquote><p>如果当前实例不存在泛型将返回 <code>null</code>。</p><h2 id="generic-method-1" tabindex="-1"><a class="header-anchor" href="#generic-method-1" aria-hidden="true">#</a> generic <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">generic</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">GenericClass</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">GenericClass</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获得当前实例中的泛型父类。</p></blockquote><p>如果当前实例不存在泛型将返回 <code>null</code>。</p><h2 id="superclass-method" tabindex="-1"><a class="header-anchor" href="#superclass-method" aria-hidden="true">#</a> superClass <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">superClass</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">SuperClass</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.80</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>调用父类实例。</p></blockquote><h2 id="field-method" tabindex="-1"><a class="header-anchor" href="#field-method" aria-hidden="true">#</a> field <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">field</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">FieldConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">FieldFinder</span><span style="color:#ADBAC7;">.Result.Instance</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>调用当前实例中的变量。</p></blockquote><h2 id="method-method" tabindex="-1"><a class="header-anchor" href="#method-method" aria-hidden="true">#</a> method <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MethodConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">MethodFinder</span><span style="color:#ADBAC7;">.Result.Instance</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>调用当前实例中的方法。</p></blockquote><h2 id="superclass-class" tabindex="-1"><a class="header-anchor" href="#superclass-class" aria-hidden="true">#</a> SuperClass <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">SuperClass</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> superClassSet: </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.80</code> <code>新增</code></p><p><code>v1.1.0</code> <code>修改</code></p><p>新增 <code>superClassSet</code> 参数</p><p><strong>功能描述</strong></p><blockquote><p>当前类的父类实例的类操作对象。</p></blockquote><h3 id="name-field-1" tabindex="-1"><a class="header-anchor" href="#name-field-1" aria-hidden="true">#</a> name <span class="symbol">- field</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获得当前 <code>classSet</code> 中父类的 <code>Class.getName</code>。</p></blockquote><h3 id="simplename-field-1" tabindex="-1"><a class="header-anchor" href="#simplename-field-1" aria-hidden="true">#</a> simpleName <span class="symbol">- field</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> simpleName: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获得当前 <code>classSet</code> 中父类的 <code>Class.getSimpleName</code>。</p></blockquote><h3 id="generic-method-2" tabindex="-1"><a class="header-anchor" href="#generic-method-2" aria-hidden="true">#</a> generic <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">generic</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">GenericClass</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获得当前实例父类中的泛型父类。</p></blockquote><p>如果当前实例不存在泛型将返回 <code>null</code>。</p><h3 id="generic-method-3" tabindex="-1"><a class="header-anchor" href="#generic-method-3" aria-hidden="true">#</a> generic <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">generic</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">GenericClass</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">GenericClass</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获得当前实例父类中的泛型父类。</p></blockquote><p>如果当前实例不存在泛型将返回 <code>null</code>。</p><h3 id="field-method-1" tabindex="-1"><a class="header-anchor" href="#field-method-1" aria-hidden="true">#</a> field <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">field</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">FieldConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">FieldFinder</span><span style="color:#ADBAC7;">.Result.Instance</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.80</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>调用父类实例中的变量。</p></blockquote><h3 id="method-method-1" tabindex="-1"><a class="header-anchor" href="#method-method-1" aria-hidden="true">#</a> method <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MethodConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">MethodFinder</span><span style="color:#ADBAC7;">.Result.Instance</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.80</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>调用父类实例中的方法。</p></blockquote>`,99),p=[l];function c(t,r){return a(),e("div",null,p)}const i=s(o,[["render",c],["__file","CurrentClass.html.vue"]]);export{i as default};

View File

@@ -0,0 +1,2 @@
import{_ as e,o,c as a,a as s}from"./app-BpUB8-Q8.js";const t={},c=s(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="definedtypefactory-kt" tabindex="-1"><a class="header-anchor" href="#definedtypefactory-kt" aria-hidden="true">#</a> DefinedTypeFactory <span class="symbol">- kt</span></h1><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>这是一个内部类型的定义常量类,主要用于反射 API 相关用法的延伸。</p></blockquote><h2 id="vaguetype-field" tabindex="-1"><a class="header-anchor" href="#vaguetype-field" aria-hidden="true">#</a> VagueType <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> VagueType: </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>得到模糊类型。</p></blockquote>`,12),n=[c];function d(p,r){return o(),a("div",null,n)}const i=e(t,[["render",d],["__file","DefinedTypeFactory.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-5acc12ab","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/type/defined/DefinedTypeFactory.html","title":"DefinedTypeFactory - kt","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"VagueType - field","slug":"vaguetype-field","link":"#vaguetype-field","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":3}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/type/defined/DefinedTypeFactory.md"}');export{e as data};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-a2615d0c","path":"/en/api/public/com/highcapable/yukihookapi/hook/type/defined/DefinedTypeFactory.html","title":"DefinedTypeFactory - kt","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"VagueType - field","slug":"vaguetype-field","link":"#vaguetype-field","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":2}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/type/defined/DefinedTypeFactory.md"}');export{e as data};

View File

@@ -0,0 +1,2 @@
import{_ as e,o as t,c as o,a}from"./app-BpUB8-Q8.js";const n={},s=a(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="definedtypefactory-kt" tabindex="-1"><a class="header-anchor" href="#definedtypefactory-kt" aria-hidden="true">#</a> DefinedTypeFactory <span class="symbol">- kt</span></h1><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>这是一个内部类型的定义常量类,主要用于反射 API 相关用法的延伸。</p></blockquote><h2 id="vaguetype-field" tabindex="-1"><a class="header-anchor" href="#vaguetype-field" aria-hidden="true">#</a> VagueType <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> VagueType: </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到模糊类型。</p></blockquote>`,13),c=[s];function r(d,i){return t(),o("div",null,c)}const p=e(n,[["render",r],["__file","DefinedTypeFactory.html.vue"]]);export{p as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-2a898c66","path":"/en/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/DexClassFinder.html","title":"DexClassFinder - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"companion object - object","slug":"companion-object-object","link":"#companion-object-object","children":[{"level":3,"title":"clearCache - method","slug":"clearcache-method","link":"#clearcache-method","children":[]}]},{"level":2,"title":"fullName - field","slug":"fullname-field","link":"#fullname-field","children":[]},{"level":2,"title":"simpleName - field","slug":"simplename-field","link":"#simplename-field","children":[]},{"level":2,"title":"singleName - field","slug":"singlename-field","link":"#singlename-field","children":[]},{"level":2,"title":"from - method","slug":"from-method","link":"#from-method","children":[]},{"level":2,"title":"modifiers - method","slug":"modifiers-method","link":"#modifiers-method","children":[]},{"level":2,"title":"fullName - method","slug":"fullname-method","link":"#fullname-method","children":[]},{"level":2,"title":"simpleName - method","slug":"simplename-method","link":"#simplename-method","children":[]},{"level":2,"title":"singleName - method","slug":"singlename-method","link":"#singlename-method","children":[]},{"level":2,"title":"fullName - method","slug":"fullname-method-1","link":"#fullname-method-1","children":[]},{"level":2,"title":"simpleName - method","slug":"simplename-method-1","link":"#simplename-method-1","children":[]},{"level":2,"title":"singleName - method","slug":"singlename-method-1","link":"#singlename-method-1","children":[]},{"level":2,"title":"extends - method","slug":"extends-method","link":"#extends-method","children":[]},{"level":2,"title":"extends - method","slug":"extends-method-1","link":"#extends-method-1","children":[]},{"level":2,"title":"implements - method","slug":"implements-method","link":"#implements-method","children":[]},{"level":2,"title":"implements - method","slug":"implements-method-1","link":"#implements-method-1","children":[]},{"level":2,"title":"anonymous - method","slug":"anonymous-method","link":"#anonymous-method","children":[]},{"level":2,"title":"noExtends - method","slug":"noextends-method","link":"#noextends-method","children":[]},{"level":2,"title":"noImplements - method","slug":"noimplements-method","link":"#noimplements-method","children":[]},{"level":2,"title":"noSuper - method","slug":"nosuper-method","link":"#nosuper-method","children":[]},{"level":2,"title":"enclosing - method","slug":"enclosing-method","link":"#enclosing-method","children":[]},{"level":2,"title":"enclosing - method","slug":"enclosing-method-1","link":"#enclosing-method-1","children":[]},{"level":2,"title":"FromPackageRules - class","slug":"frompackagerules-class","link":"#frompackagerules-class","children":[{"level":3,"title":"absolute - method","slug":"absolute-method","link":"#absolute-method","children":[]}]},{"level":2,"title":"ClassNameRules - class","slug":"classnamerules-class","link":"#classnamerules-class","children":[{"level":3,"title":"optional - method","slug":"optional-method","link":"#optional-method","children":[]}]},{"level":2,"title":"member - method","slug":"member-method","link":"#member-method","children":[]},{"level":2,"title":"field - method","slug":"field-method","link":"#field-method","children":[]},{"level":2,"title":"method - method","slug":"method-method","link":"#method-method","children":[]},{"level":2,"title":"constructor - method","slug":"constructor-method","link":"#constructor-method","children":[]},{"level":2,"title":"Result - class","slug":"result-class","link":"#result-class","children":[{"level":3,"title":"result - method","slug":"result-method","link":"#result-method","children":[]},{"level":3,"title":"get - method","slug":"get-method","link":"#get-method","children":[]},{"level":3,"title":"all - method","slug":"all-method","link":"#all-method","children":[]},{"level":3,"title":"all - method","slug":"all-method-1","link":"#all-method-1","children":[]},{"level":3,"title":"wait - method","slug":"wait-method","link":"#wait-method","children":[]},{"level":3,"title":"waitAll - method","slug":"waitall-method","link":"#waitall-method","children":[]},{"level":3,"title":"onNoClassDefFoundError - method","slug":"onnoclassdeffounderror-method","link":"#onnoclassdeffounderror-method","children":[]},{"level":3,"title":"ignored - method","slug":"ignored-method","link":"#ignored-method","children":[]}]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":5}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/DexClassFinder.md"}');export{e as data};

View File

@@ -0,0 +1,45 @@
import{_ as s,o as e,c as a,a as o}from"./app-BpUB8-Q8.js";const n={},l=o(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="dexclassfinder-class" tabindex="-1"><a class="header-anchor" href="#dexclassfinder-class" aria-hidden="true">#</a> DexClassFinder <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">DexClassFinder</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> async: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">override</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> loaderSet: </span><span style="color:#F69D50;">ClassLoader</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"><span style="color:#ADBAC7;">) : </span><span style="color:#F69D50;">ClassBaseFinder</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Class</code> 查找类。</p></blockquote><p>可使用 <code>BaseDexClassLoader</code> 通过指定条件查找指定 <code>Class</code> 或一组 <code>Class</code>。</p><div class="custom-container warning"><p class="custom-container-title">注意</p><p>此功能尚实验阶段,性能与稳定性可能仍然存在问题,使用过程遇到问题请向我们报告并帮助我们改进。</p></div><h2 id="companion-object-object" tabindex="-1"><a class="header-anchor" href="#companion-object-object" aria-hidden="true">#</a> companion object <span class="symbol">- object</span></h2><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><h3 id="clearcache-method" tabindex="-1"><a class="header-anchor" href="#clearcache-method" aria-hidden="true">#</a> clearCache <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">clearCache</span><span style="color:#ADBAC7;">(context: </span><span style="color:#F69D50;">Context</span><span style="color:#ADBAC7;">?, versionName: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">?, versionCode: </span><span style="color:#F69D50;">Long</span><span style="color:#ADBAC7;">?)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>清除当前 <code>DexClassFinder</code> 的 <code>Class</code> 缓存。</p></blockquote><p>适用于全部通过 <a href="../../../factory/ReflectionFactory#classloader-searchclass-ext-method">ClassLoader.searchClass</a> 或 <a href="../../../param/PackageParam#searchclass-method">PackageParam.searchClass</a> 获取的 <code>DexClassFinder</code>。</p><h2 id="fullname-field" tabindex="-1"><a class="header-anchor" href="#fullname-field" aria-hidden="true">#</a> fullName <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> fullName: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 完整名称。</p></blockquote><p>只会查找匹配到的 <code>Class.getName</code>。</p><p>例如 <code>com.demo.Test</code> 需要填写 <code>com.demo.Test</code>。</p><h2 id="simplename-field" tabindex="-1"><a class="header-anchor" href="#simplename-field" aria-hidden="true">#</a> simpleName <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> simpleName: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 简单名称。</p></blockquote><p>只会查找匹配到的 <code>Class.getSimpleName</code>。</p><p>例如 <code>com.demo.Test</code> 只需要填写 <code>Test</code>。</p><p>对于匿名类例如 <code>com.demo.Test$InnerTest</code> 会为空,此时你可以使用 <a href="#singlename-field">singleName</a>。</p><h2 id="singlename-field" tabindex="-1"><a class="header-anchor" href="#singlename-field" aria-hidden="true">#</a> singleName <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> singleName: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 独立名称。</p></blockquote><p>设置后将首先使用 <code>Class.getSimpleName</code>,若为空则会使用 <code>Class.getName</code> 进行处理。</p><p>例如 <code>com.demo.Test</code> 只需要填写 <code>Test</code>。</p><p>对于匿名类例如 <code>com.demo.Test$InnerTest</code> 只需要填写 <code>Test$InnerTest</code>。</p><h2 id="from-method" tabindex="-1"><a class="header-anchor" href="#from-method" aria-hidden="true">#</a> from <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">from</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">FromPackageRules</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置在指定包名范围查找当前 <code>Class</code>。</p></blockquote><p>设置后仅会在当前 <code>name</code> 开头匹配的包名路径下进行查找,可提升查找速度。</p><p>例如 ↓</p><p><code>com.demo.test</code></p><p><code>com.demo.test.demo</code></p><div class="custom-container warning"><p class="custom-container-title">注意</p><p>建议设置此参数指定查找范围,否则 <strong>Class</strong> 过多时将会非常慢。</p></div><h2 id="modifiers-method" tabindex="-1"><a class="header-anchor" href="#modifiers-method" aria-hidden="true">#</a> modifiers <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">modifiers</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ModifierConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 标识符筛选条件。</p></blockquote><p>可不设置筛选条件。</p><h2 id="fullname-method" tabindex="-1"><a class="header-anchor" href="#fullname-method" aria-hidden="true">#</a> fullName <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">fullName</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">ClassNameRules</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 完整名称。</p></blockquote><p>只会查找匹配到的 <code>Class.getName</code>。</p><p>例如 <code>com.demo.Test</code> 需要填写 <code>com.demo.Test</code>。</p><h2 id="simplename-method" tabindex="-1"><a class="header-anchor" href="#simplename-method" aria-hidden="true">#</a> simpleName <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">simpleName</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">ClassNameRules</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 简单名称。</p></blockquote><p>只会查找匹配到的 <code>Class.getSimpleName</code>。</p><p>例如 <code>com.demo.Test</code> 只需要填写 <code>Test</code>。</p><p>对于匿名类例如 <code>com.demo.Test$InnerTest 会为空</code>,此时你可以使用 <a href="#singlename-method">singleName</a>。</p><h2 id="singlename-method" tabindex="-1"><a class="header-anchor" href="#singlename-method" aria-hidden="true">#</a> singleName <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">singleName</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">ClassNameRules</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 独立名称。</p></blockquote><p>设置后将首先使用 <code>Class.getSimpleName</code>,若为空则会使用 <code>Class.getName</code> 进行处理。</p><p>例如 <code>com.demo.Test</code> 只需要填写 <code>Test</code>。</p><p>对于匿名类例如 <code>com.demo.Test$InnerTest</code> 只需要填写 <code>Test$InnerTest</code>。</p><h2 id="fullname-method-1" tabindex="-1"><a class="header-anchor" href="#fullname-method-1" aria-hidden="true">#</a> fullName <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">fullName</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">NameConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 完整名称条件。</p></blockquote><p>只会查找匹配到的 <code>Class.getName</code>。</p><h2 id="simplename-method-1" tabindex="-1"><a class="header-anchor" href="#simplename-method-1" aria-hidden="true">#</a> simpleName <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">simpleName</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">NameConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 简单名称条件。</p></blockquote><p>只会查找匹配到的 <code>Class.getSimpleName</code>。</p><h2 id="singlename-method-1" tabindex="-1"><a class="header-anchor" href="#singlename-method-1" aria-hidden="true">#</a> singleName <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">singleName</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">NameConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 独立名称条件。</p></blockquote><p>设置后将首先使用 <code>Class.getSimpleName</code>,若为空则会使用 <code>Class.getName</code> 进行处理。</p><h2 id="extends-method" tabindex="-1"><a class="header-anchor" href="#extends-method" aria-hidden="true">#</a> extends <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">extends</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 继承的父类。</p></blockquote><h2 id="extends-method-1" tabindex="-1"><a class="header-anchor" href="#extends-method-1" aria-hidden="true">#</a> extends <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">extends</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 继承的父类。</p></blockquote><p>会同时查找 <code>name</code> 中所有匹配的父类。</p><h2 id="implements-method" tabindex="-1"><a class="header-anchor" href="#implements-method" aria-hidden="true">#</a> implements <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">implements</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 实现的接口类。</p></blockquote><h2 id="implements-method-1" tabindex="-1"><a class="header-anchor" href="#implements-method-1" aria-hidden="true">#</a> implements <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">implements</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 实现的接口类。</p></blockquote><p>会同时查找 <code>name</code> 中所有匹配的接口类。</p><h2 id="anonymous-method" tabindex="-1"><a class="header-anchor" href="#anonymous-method" aria-hidden="true">#</a> anonymous <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">anonymous</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>标识 <code>Class</code> 为匿名类。</p></blockquote><p>例如 <code>com.demo.Test$1</code> 或 <code>com.demo.Test$InnerTest</code>。</p><p>标识后你可以使用 <a href="#enclosing-method">enclosing</a> 来进一步指定匿名类的 (封闭类) 主类。</p><h2 id="noextends-method" tabindex="-1"><a class="header-anchor" href="#noextends-method" aria-hidden="true">#</a> noExtends <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">noExtends</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 没有任何继承。</p></blockquote><p>此时 <code>Class</code> 只应该继承于 <code>Any</code>。</p><div class="custom-container warning"><p class="custom-container-title">注意</p><p>设置此条件后 <a href="#extends-method">extends</a> 将失效。</p></div><h2 id="noimplements-method" tabindex="-1"><a class="header-anchor" href="#noimplements-method" aria-hidden="true">#</a> noImplements <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">noImplements</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 没有任何接口。</p></blockquote><div class="custom-container warning"><p class="custom-container-title">注意</p><p>设置此条件后 <a href="#implements-method">implements</a> 将失效。</p></div><h2 id="nosuper-method" tabindex="-1"><a class="header-anchor" href="#nosuper-method" aria-hidden="true">#</a> noSuper <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">noSuper</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 没有任何继承与接口。</p></blockquote><p>此时 <code>Class</code> 只应该继承于 <code>Any</code>。</p><div class="custom-container warning"><p class="custom-container-title">注意</p><p>设置此条件后 <a href="#extends-method">extends</a> 与 <a href="#implements-method">implements</a> 将失效。</p></div><h2 id="enclosing-method" tabindex="-1"><a class="header-anchor" href="#enclosing-method" aria-hidden="true">#</a> enclosing <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">enclosing</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 匿名类的 (封闭类) 主类。</p></blockquote><h2 id="enclosing-method-1" tabindex="-1"><a class="header-anchor" href="#enclosing-method-1" aria-hidden="true">#</a> enclosing <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">enclosing</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 匿名类的 (封闭类) 主类。</p></blockquote><p>会同时查找 <code>name</code> 中所有匹配的 (封闭类) 主类。</p><h2 id="frompackagerules-class" tabindex="-1"><a class="header-anchor" href="#frompackagerules-class" aria-hidden="true">#</a> FromPackageRules <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">FromPackageRules</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> packages: </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">ClassRulesData</span><span style="color:#ADBAC7;">.</span><span style="color:#F69D50;">PackageRulesData</span><span style="color:#ADBAC7;">&gt;)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>包名范围名称过滤匹配条件实现类。</p></blockquote><h3 id="absolute-method" tabindex="-1"><a class="header-anchor" href="#absolute-method" aria-hidden="true">#</a> absolute <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">absolute</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置包名绝对匹配。</p></blockquote><p>例如有如下包名 ↓</p><p><code>com.demo.test.a</code></p><p><code>com.demo.test.a.b</code></p><p><code>com.demo.test.active</code></p><p>若包名条件为 <code>com.demo.test.a</code> 则绝对匹配仅能匹配到第一个。</p><p>相反地,不设置以上示例会全部匹配。</p><h2 id="classnamerules-class" tabindex="-1"><a class="header-anchor" href="#classnamerules-class" aria-hidden="true">#</a> ClassNameRules <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">ClassNameRules</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">ClassRulesData</span><span style="color:#ADBAC7;">.NameRulesData)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>类名匹配条件实现类。</p></blockquote><h3 id="optional-method" tabindex="-1"><a class="header-anchor" href="#optional-method" aria-hidden="true">#</a> optional <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">optional</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置类名可选。</p></blockquote><p>例如有如下类名 ↓</p><p><code>com.demo.Test</code> <strong>fullName</strong> / <code>Test</code> <strong>simpleName</strong></p><p><code>defpackage.a</code> <strong>fullName</strong> / <code>a</code> <strong>simpleName</strong></p><p>这两个类名都是同一个类,但是在有些版本中被混淆有些版本没有。</p><p>此时可设置类名为 <code>com.demo.Test</code> <strong>fullName</strong> / <code>Test</code> <strong>simpleName</strong>。</p><p>这样就可在完全匹配类名情况下使用类名而忽略其它查找条件,否则忽略此条件继续使用其它查找条件。</p><h2 id="member-method" tabindex="-1"><a class="header-anchor" href="#member-method" aria-hidden="true">#</a> member <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">member</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MemberRules</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">MemberRulesResult</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 满足的 <code>Member</code> 条件。</p></blockquote><h2 id="field-method" tabindex="-1"><a class="header-anchor" href="#field-method" aria-hidden="true">#</a> field <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">field</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">FieldRules</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">MemberRulesResult</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 满足的 <code>Field</code> 条件。</p></blockquote><h2 id="method-method" tabindex="-1"><a class="header-anchor" href="#method-method" aria-hidden="true">#</a> method <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MethodRules</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">MemberRulesResult</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 满足的 <code>Method</code> 条件。</p></blockquote><h2 id="constructor-method" tabindex="-1"><a class="header-anchor" href="#constructor-method" aria-hidden="true">#</a> constructor <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">ConstructorRules</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">MemberRulesResult</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Class</code> 满足的 <code>Constructor</code> 条件。</p></blockquote><h2 id="result-class" tabindex="-1"><a class="header-anchor" href="#result-class" aria-hidden="true">#</a> Result <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> isNotFound: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">, </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> throwable: </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">?) : </span><span style="color:#F69D50;">BaseResult</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Class</code> 查找结果实现类。</p></blockquote><h3 id="result-method" tabindex="-1"><a class="header-anchor" href="#result-method" aria-hidden="true">#</a> result <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>创建监听结果事件方法体。</p></blockquote><h3 id="get-method" tabindex="-1"><a class="header-anchor" href="#get-method" aria-hidden="true">#</a> get <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>得到 <code>Class</code> 本身。</p></blockquote><p>若有多个 <code>Class</code> 结果只会返回第一个。</p><p>在查找条件找不到任何结果的时候将返回 <code>null</code>。</p><p>若你设置了 <code>async</code> 请使用 <a href="#wait-method">wait</a> 方法。</p><h3 id="all-method" tabindex="-1"><a class="header-anchor" href="#all-method" aria-hidden="true">#</a> all <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><code>v1.2.0</code> <code>修改</code></p><p>返回值类型由 <code>HashSet</code> 修改为 <code>MutableList</code></p><p><strong>功能描述</strong></p><blockquote><p>得到 <code>Class</code> 本身数组。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Class</code> 实例。</p><p>在查找条件找不到任何结果的时候将返回空的 <code>MutableList</code>。</p><p>若你设置了 <code>async</code> 请使用 <a href="#waitall-method">waitAll</a> 方法。</p><h3 id="all-method-1" tabindex="-1"><a class="header-anchor" href="#all-method-1" aria-hidden="true">#</a> all <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>得到 <code>Class</code> 本身数组 (依次遍历)。</p></blockquote><p>回调全部查找条件匹配的多个 <code>Class</code> 实例。</p><p>在查找条件找不到任何结果的时候将不会执行。</p><p>若你设置了 <code>async</code> 请使用 <a href="#waitall-method">waitAll</a> 方法。</p><h3 id="wait-method" tabindex="-1"><a class="header-anchor" href="#wait-method" aria-hidden="true">#</a> wait <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">wait</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;?) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>得到 <code>Class</code> 本身 (异步)。</p></blockquote><p>若有多个 <code>Class</code> 结果只会回调第一个。</p><p>在查找条件找不到任何结果的时候将回调 null。</p><p>你需要设置 <code>async</code> 后此方法才会被回调,否则请使用 <a href="#get-method">get</a> 方法。</p><h3 id="waitall-method" tabindex="-1"><a class="header-anchor" href="#waitall-method" aria-hidden="true">#</a> waitAll <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">waitAll</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;&gt;) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><code>v1.2.0</code> <code>修改</code></p><p><code>result</code> 类型由 <code>HashSet</code> 修改为 <code>MutableList</code></p><p><strong>功能描述</strong></p><blockquote><p>得到 <code>Class</code> 本身数组 (异步)。</p></blockquote><p>回调全部查找条件匹配的多个 <code>Class</code> 实例。</p><p>在查找条件找不到任何结果的时候将回调空的 <code>MutableList</code>。</p><p>你需要设置 <code>async</code> 后此方法才会被回调,否则请使用 <a href="#all-method">all</a> 方法。</p><h3 id="onnoclassdeffounderror-method" tabindex="-1"><a class="header-anchor" href="#onnoclassdeffounderror-method" aria-hidden="true">#</a> onNoClassDefFoundError <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoClassDefFoundError</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>监听找不到 <code>Class</code> 时。</p></blockquote><h3 id="ignored-method" tabindex="-1"><a class="header-anchor" href="#ignored-method" aria-hidden="true">#</a> ignored <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">ignored</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>忽略异常并停止打印任何错误日志。</p></blockquote><p>此时若要监听异常结果,你需要手动实现 <a href="#onnoclassdeffounderror-method">onNoClassDefFoundError</a> 方法。</p>`,314),p=[l];function c(t,d){return e(),a("div",null,p)}const i=s(n,[["render",c],["__file","DexClassFinder.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-45111efc","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/DexClassFinder.html","title":"DexClassFinder - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"companion object - object","slug":"companion-object-object","link":"#companion-object-object","children":[{"level":3,"title":"clearCache - method","slug":"clearcache-method","link":"#clearcache-method","children":[]}]},{"level":2,"title":"fullName - field","slug":"fullname-field","link":"#fullname-field","children":[]},{"level":2,"title":"simpleName - field","slug":"simplename-field","link":"#simplename-field","children":[]},{"level":2,"title":"singleName - field","slug":"singlename-field","link":"#singlename-field","children":[]},{"level":2,"title":"from - method","slug":"from-method","link":"#from-method","children":[]},{"level":2,"title":"modifiers - method","slug":"modifiers-method","link":"#modifiers-method","children":[]},{"level":2,"title":"fullName - method","slug":"fullname-method","link":"#fullname-method","children":[]},{"level":2,"title":"simpleName - method","slug":"simplename-method","link":"#simplename-method","children":[]},{"level":2,"title":"singleName - method","slug":"singlename-method","link":"#singlename-method","children":[]},{"level":2,"title":"fullName - method","slug":"fullname-method-1","link":"#fullname-method-1","children":[]},{"level":2,"title":"simpleName - method","slug":"simplename-method-1","link":"#simplename-method-1","children":[]},{"level":2,"title":"singleName - method","slug":"singlename-method-1","link":"#singlename-method-1","children":[]},{"level":2,"title":"extends - method","slug":"extends-method","link":"#extends-method","children":[]},{"level":2,"title":"extends - method","slug":"extends-method-1","link":"#extends-method-1","children":[]},{"level":2,"title":"implements - method","slug":"implements-method","link":"#implements-method","children":[]},{"level":2,"title":"implements - method","slug":"implements-method-1","link":"#implements-method-1","children":[]},{"level":2,"title":"anonymous - method","slug":"anonymous-method","link":"#anonymous-method","children":[]},{"level":2,"title":"noExtends - method","slug":"noextends-method","link":"#noextends-method","children":[]},{"level":2,"title":"noImplements - method","slug":"noimplements-method","link":"#noimplements-method","children":[]},{"level":2,"title":"noSuper - method","slug":"nosuper-method","link":"#nosuper-method","children":[]},{"level":2,"title":"enclosing - method","slug":"enclosing-method","link":"#enclosing-method","children":[]},{"level":2,"title":"enclosing - method","slug":"enclosing-method-1","link":"#enclosing-method-1","children":[]},{"level":2,"title":"FromPackageRules - class","slug":"frompackagerules-class","link":"#frompackagerules-class","children":[{"level":3,"title":"absolute - method","slug":"absolute-method","link":"#absolute-method","children":[]}]},{"level":2,"title":"ClassNameRules - class","slug":"classnamerules-class","link":"#classnamerules-class","children":[{"level":3,"title":"optional - method","slug":"optional-method","link":"#optional-method","children":[]}]},{"level":2,"title":"member - method","slug":"member-method","link":"#member-method","children":[]},{"level":2,"title":"field - method","slug":"field-method","link":"#field-method","children":[]},{"level":2,"title":"method - method","slug":"method-method","link":"#method-method","children":[]},{"level":2,"title":"constructor - method","slug":"constructor-method","link":"#constructor-method","children":[]},{"level":2,"title":"Result - class","slug":"result-class","link":"#result-class","children":[{"level":3,"title":"result - method","slug":"result-method","link":"#result-method","children":[]},{"level":3,"title":"get - method","slug":"get-method","link":"#get-method","children":[]},{"level":3,"title":"all - method","slug":"all-method","link":"#all-method","children":[]},{"level":3,"title":"all - method","slug":"all-method-1","link":"#all-method-1","children":[]},{"level":3,"title":"wait - method","slug":"wait-method","link":"#wait-method","children":[]},{"level":3,"title":"waitAll - method","slug":"waitall-method","link":"#waitall-method","children":[]},{"level":3,"title":"onNoClassDefFoundError - method","slug":"onnoclassdeffounderror-method","link":"#onnoclassdeffounderror-method","children":[]},{"level":3,"title":"ignored - method","slug":"ignored-method","link":"#ignored-method","children":[]}]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":6}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/DexClassFinder.md"}');export{e as data};

View File

@@ -0,0 +1,45 @@
import{_ as s,o as e,c as a,a as o}from"./app-BpUB8-Q8.js";const n={},l=o(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="dexclassfinder-class" tabindex="-1"><a class="header-anchor" href="#dexclassfinder-class" aria-hidden="true">#</a> DexClassFinder <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">DexClassFinder</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> async: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">override</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> loaderSet: </span><span style="color:#F69D50;">ClassLoader</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"><span style="color:#ADBAC7;">) : </span><span style="color:#F69D50;">ClassBaseFinder</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Class</code> 查找类。</p></blockquote><p>可使用 <code>BaseDexClassLoader</code> 通过指定条件查找指定 <code>Class</code> 或一组 <code>Class</code>。</p><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>此功能尚在实验阶段,性能与稳定性可能仍然存在问题,使用过程遇到问题请向我们报告并帮助我们改进。</p></div><h2 id="companion-object-object" tabindex="-1"><a class="header-anchor" href="#companion-object-object" aria-hidden="true">#</a> companion object <span class="symbol">- object</span></h2><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><h3 id="clearcache-method" tabindex="-1"><a class="header-anchor" href="#clearcache-method" aria-hidden="true">#</a> clearCache <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">clearCache</span><span style="color:#ADBAC7;">(context: </span><span style="color:#F69D50;">Context</span><span style="color:#ADBAC7;">?, versionName: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">?, versionCode: </span><span style="color:#F69D50;">Long</span><span style="color:#ADBAC7;">?)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>清除当前 <code>DexClassFinder</code> 的 <code>Class</code> 缓存。</p></blockquote><p>适用于全部通过 <a href="../../../factory/ReflectionFactory#classloader-searchclass-ext-method">ClassLoader.searchClass</a> 或 <a href="../../../param/PackageParam#searchclass-method">PackageParam.searchClass</a> 获取的 <code>DexClassFinder</code>。</p><h2 id="fullname-field" tabindex="-1"><a class="header-anchor" href="#fullname-field" aria-hidden="true">#</a> fullName <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> fullName: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 完整名称。</p></blockquote><p>只会查找匹配到的 <code>Class.getName</code>。</p><p>例如 <code>com.demo.Test</code> 需要填写 <code>com.demo.Test</code>。</p><h2 id="simplename-field" tabindex="-1"><a class="header-anchor" href="#simplename-field" aria-hidden="true">#</a> simpleName <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> simpleName: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 简单名称。</p></blockquote><p>只会查找匹配到的 <code>Class.getSimpleName</code>。</p><p>例如 <code>com.demo.Test</code> 只需要填写 <code>Test</code>。</p><p>对于匿名类例如 <code>com.demo.Test$InnerTest</code> 会为空,此时你可以使用 <a href="#singlename-field">singleName</a>。</p><h2 id="singlename-field" tabindex="-1"><a class="header-anchor" href="#singlename-field" aria-hidden="true">#</a> singleName <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> singleName: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 独立名称。</p></blockquote><p>设置后将首先使用 <code>Class.getSimpleName</code>,若为空则会使用 <code>Class.getName</code> 进行处理。</p><p>例如 <code>com.demo.Test</code> 只需要填写 <code>Test</code>。</p><p>对于匿名类例如 <code>com.demo.Test$InnerTest</code> 只需要填写 <code>Test$InnerTest</code>。</p><h2 id="from-method" tabindex="-1"><a class="header-anchor" href="#from-method" aria-hidden="true">#</a> from <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">from</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">FromPackageRules</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置在指定包名范围查找当前 <code>Class</code>。</p></blockquote><p>设置后仅会在当前 <code>name</code> 开头匹配的包名路径下进行查找,可提升查找速度。</p><p>例如 ↓</p><p><code>com.demo.test</code></p><p><code>com.demo.test.demo</code></p><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>建议设置此参数指定查找范围,否则 <strong>Class</strong> 过多时将会非常慢。</p></div><h2 id="modifiers-method" tabindex="-1"><a class="header-anchor" href="#modifiers-method" aria-hidden="true">#</a> modifiers <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">modifiers</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ModifierConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 标识符筛选条件。</p></blockquote><p>可不设置筛选条件。</p><h2 id="fullname-method" tabindex="-1"><a class="header-anchor" href="#fullname-method" aria-hidden="true">#</a> fullName <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">fullName</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">ClassNameRules</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 完整名称。</p></blockquote><p>只会查找匹配到的 <code>Class.getName</code>。</p><p>例如 <code>com.demo.Test</code> 需要填写 <code>com.demo.Test</code>。</p><h2 id="simplename-method" tabindex="-1"><a class="header-anchor" href="#simplename-method" aria-hidden="true">#</a> simpleName <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">simpleName</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">ClassNameRules</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 简单名称。</p></blockquote><p>只会查找匹配到的 <code>Class.getSimpleName</code>。</p><p>例如 <code>com.demo.Test</code> 只需要填写 <code>Test</code>。</p><p>对于匿名类例如 <code>com.demo.Test$InnerTest 会为空</code>,此时你可以使用 <a href="#singlename-method">singleName</a>。</p><h2 id="singlename-method" tabindex="-1"><a class="header-anchor" href="#singlename-method" aria-hidden="true">#</a> singleName <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">singleName</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">ClassNameRules</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 独立名称。</p></blockquote><p>设置后将首先使用 <code>Class.getSimpleName</code>,若为空则会使用 <code>Class.getName</code> 进行处理。</p><p>例如 <code>com.demo.Test</code> 只需要填写 <code>Test</code>。</p><p>对于匿名类例如 <code>com.demo.Test$InnerTest</code> 只需要填写 <code>Test$InnerTest</code>。</p><h2 id="fullname-method-1" tabindex="-1"><a class="header-anchor" href="#fullname-method-1" aria-hidden="true">#</a> fullName <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">fullName</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">NameConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 完整名称条件。</p></blockquote><p>只会查找匹配到的 <code>Class.getName</code>。</p><h2 id="simplename-method-1" tabindex="-1"><a class="header-anchor" href="#simplename-method-1" aria-hidden="true">#</a> simpleName <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">simpleName</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">NameConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 简单名称条件。</p></blockquote><p>只会查找匹配到的 <code>Class.getSimpleName</code>。</p><h2 id="singlename-method-1" tabindex="-1"><a class="header-anchor" href="#singlename-method-1" aria-hidden="true">#</a> singleName <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">singleName</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">NameConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 独立名称条件。</p></blockquote><p>设置后将首先使用 <code>Class.getSimpleName</code>,若为空则会使用 <code>Class.getName</code> 进行处理。</p><h2 id="extends-method" tabindex="-1"><a class="header-anchor" href="#extends-method" aria-hidden="true">#</a> extends <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">extends</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 继承的父类。</p></blockquote><h2 id="extends-method-1" tabindex="-1"><a class="header-anchor" href="#extends-method-1" aria-hidden="true">#</a> extends <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">extends</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 继承的父类。</p></blockquote><p>会同时查找 <code>name</code> 中所有匹配的父类。</p><h2 id="implements-method" tabindex="-1"><a class="header-anchor" href="#implements-method" aria-hidden="true">#</a> implements <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">implements</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 实现的接口类。</p></blockquote><h2 id="implements-method-1" tabindex="-1"><a class="header-anchor" href="#implements-method-1" aria-hidden="true">#</a> implements <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">implements</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 实现的接口类。</p></blockquote><p>会同时查找 <code>name</code> 中所有匹配的接口类。</p><h2 id="anonymous-method" tabindex="-1"><a class="header-anchor" href="#anonymous-method" aria-hidden="true">#</a> anonymous <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">anonymous</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>标识 <code>Class</code> 为匿名类。</p></blockquote><p>例如 <code>com.demo.Test$1</code> 或 <code>com.demo.Test$InnerTest</code>。</p><p>标识后你可以使用 <a href="#enclosing-method">enclosing</a> 来进一步指定匿名类的 (封闭类) 主类。</p><h2 id="noextends-method" tabindex="-1"><a class="header-anchor" href="#noextends-method" aria-hidden="true">#</a> noExtends <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">noExtends</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 没有任何继承。</p></blockquote><p>此时 <code>Class</code> 只应该继承于 <code>Any</code>。</p><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>设置此条件后 <a href="#extends-method">extends</a> 将失效。</p></div><h2 id="noimplements-method" tabindex="-1"><a class="header-anchor" href="#noimplements-method" aria-hidden="true">#</a> noImplements <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">noImplements</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 没有任何接口。</p></blockquote><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>设置此条件后 <a href="#implements-method">implements</a> 将失效。</p></div><h2 id="nosuper-method" tabindex="-1"><a class="header-anchor" href="#nosuper-method" aria-hidden="true">#</a> noSuper <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">noSuper</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 没有任何继承与接口。</p></blockquote><p>此时 <code>Class</code> 只应该继承于 <code>Any</code>。</p><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>设置此条件后 <a href="#extends-method">extends</a> 与 <a href="#implements-method">implements</a> 将失效。</p></div><h2 id="enclosing-method" tabindex="-1"><a class="header-anchor" href="#enclosing-method" aria-hidden="true">#</a> enclosing <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">enclosing</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 匿名类的 (封闭类) 主类。</p></blockquote><h2 id="enclosing-method-1" tabindex="-1"><a class="header-anchor" href="#enclosing-method-1" aria-hidden="true">#</a> enclosing <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">enclosing</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 匿名类的 (封闭类) 主类。</p></blockquote><p>会同时查找 <code>name</code> 中所有匹配的 (封闭类) 主类。</p><h2 id="frompackagerules-class" tabindex="-1"><a class="header-anchor" href="#frompackagerules-class" aria-hidden="true">#</a> FromPackageRules <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">FromPackageRules</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> packages: </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">ClassRulesData</span><span style="color:#ADBAC7;">.</span><span style="color:#F69D50;">PackageRulesData</span><span style="color:#ADBAC7;">&gt;)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>包名范围名称过滤匹配条件实现类。</p></blockquote><h3 id="absolute-method" tabindex="-1"><a class="header-anchor" href="#absolute-method" aria-hidden="true">#</a> absolute <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">absolute</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置包名绝对匹配。</p></blockquote><p>例如有如下包名 ↓</p><p><code>com.demo.test.a</code></p><p><code>com.demo.test.a.b</code></p><p><code>com.demo.test.active</code></p><p>若包名条件为 <code>com.demo.test.a</code> 则绝对匹配仅能匹配到第一个。</p><p>相反地,不设置以上示例会全部匹配。</p><h2 id="classnamerules-class" tabindex="-1"><a class="header-anchor" href="#classnamerules-class" aria-hidden="true">#</a> ClassNameRules <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">ClassNameRules</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">ClassRulesData</span><span style="color:#ADBAC7;">.NameRulesData)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>类名匹配条件实现类。</p></blockquote><h3 id="optional-method" tabindex="-1"><a class="header-anchor" href="#optional-method" aria-hidden="true">#</a> optional <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">optional</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置类名可选。</p></blockquote><p>例如有如下类名 ↓</p><p><code>com.demo.Test</code> <strong>fullName</strong> / <code>Test</code> <strong>simpleName</strong></p><p><code>defpackage.a</code> <strong>fullName</strong> / <code>a</code> <strong>simpleName</strong></p><p>这两个类名都是同一个类,但是在有些版本中被混淆有些版本没有。</p><p>此时可设置类名为 <code>com.demo.Test</code> <strong>fullName</strong> / <code>Test</code> <strong>simpleName</strong>。</p><p>这样就可在完全匹配类名情况下使用类名而忽略其它查找条件,否则忽略此条件继续使用其它查找条件。</p><h2 id="member-method" tabindex="-1"><a class="header-anchor" href="#member-method" aria-hidden="true">#</a> member <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">member</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MemberRules</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">MemberRulesResult</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 满足的 <code>Member</code> 条件。</p></blockquote><h2 id="field-method" tabindex="-1"><a class="header-anchor" href="#field-method" aria-hidden="true">#</a> field <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">field</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">FieldRules</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">MemberRulesResult</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 满足的 <code>Field</code> 条件。</p></blockquote><h2 id="method-method" tabindex="-1"><a class="header-anchor" href="#method-method" aria-hidden="true">#</a> method <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MethodRules</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">MemberRulesResult</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 满足的 <code>Method</code> 条件。</p></blockquote><h2 id="constructor-method" tabindex="-1"><a class="header-anchor" href="#constructor-method" aria-hidden="true">#</a> constructor <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">ConstructorRules</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">MemberRulesResult</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Class</code> 满足的 <code>Constructor</code> 条件。</p></blockquote><h2 id="result-class" tabindex="-1"><a class="header-anchor" href="#result-class" aria-hidden="true">#</a> Result <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> isNotFound: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">, </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> throwable: </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">?) : </span><span style="color:#F69D50;">BaseResult</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Class</code> 查找结果实现类。</p></blockquote><h3 id="result-method" tabindex="-1"><a class="header-anchor" href="#result-method" aria-hidden="true">#</a> result <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>创建监听结果事件方法体。</p></blockquote><h3 id="get-method" tabindex="-1"><a class="header-anchor" href="#get-method" aria-hidden="true">#</a> get <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到 <code>Class</code> 本身。</p></blockquote><p>若有多个 <code>Class</code> 结果只会返回第一个。</p><p>在查找条件找不到任何结果的时候将返回 <code>null</code>。</p><p>若你设置了 <code>async</code> 请使用 <a href="#wait-method">wait</a> 方法。</p><h3 id="all-method" tabindex="-1"><a class="header-anchor" href="#all-method" aria-hidden="true">#</a> all <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><code>v1.2.0</code> <code>modified</code></p><p>返回值类型由 <code>HashSet</code> 修改为 <code>MutableList</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到 <code>Class</code> 本身数组。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Class</code> 实例。</p><p>在查找条件找不到任何结果的时候将返回空的 <code>MutableList</code>。</p><p>若你设置了 <code>async</code> 请使用 <a href="#waitall-method">waitAll</a> 方法。</p><h3 id="all-method-1" tabindex="-1"><a class="header-anchor" href="#all-method-1" aria-hidden="true">#</a> all <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到 <code>Class</code> 本身数组 (依次遍历)。</p></blockquote><p>回调全部查找条件匹配的多个 <code>Class</code> 实例。</p><p>在查找条件找不到任何结果的时候将不会执行。</p><p>若你设置了 <code>async</code> 请使用 <a href="#waitall-method">waitAll</a> 方法。</p><h3 id="wait-method" tabindex="-1"><a class="header-anchor" href="#wait-method" aria-hidden="true">#</a> wait <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">wait</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;?) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到 <code>Class</code> 本身 (异步)。</p></blockquote><p>若有多个 <code>Class</code> 结果只会回调第一个。</p><p>在查找条件找不到任何结果的时候将回调 null。</p><p>你需要设置 <code>async</code> 后此方法才会被回调,否则请使用 <a href="#get-method">get</a> 方法。</p><h3 id="waitall-method" tabindex="-1"><a class="header-anchor" href="#waitall-method" aria-hidden="true">#</a> waitAll <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">waitAll</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;&gt;) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><code>v1.2.0</code> <code>modified</code></p><p><code>result</code> 类型由 <code>HashSet</code> 修改为 <code>MutableList</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到 <code>Class</code> 本身数组 (异步)。</p></blockquote><p>回调全部查找条件匹配的多个 <code>Class</code> 实例。</p><p>在查找条件找不到任何结果的时候将回调空的 <code>MutableList</code>。</p><p>你需要设置 <code>async</code> 后此方法才会被回调,否则请使用 <a href="#all-method">all</a> 方法。</p><h3 id="onnoclassdeffounderror-method" tabindex="-1"><a class="header-anchor" href="#onnoclassdeffounderror-method" aria-hidden="true">#</a> onNoClassDefFoundError <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoClassDefFoundError</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>监听找不到 <code>Class</code> 时。</p></blockquote><h3 id="ignored-method" tabindex="-1"><a class="header-anchor" href="#ignored-method" aria-hidden="true">#</a> ignored <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">ignored</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>忽略异常并停止打印任何错误日志。</p></blockquote><p>此时若要监听异常结果,你需要手动实现 <a href="#onnoclassdeffounderror-method">onNoClassDefFoundError</a> 方法。</p>`,315),t=[l];function p(c,d){return e(),a("div",null,t)}const i=s(n,[["render",p],["__file","DexClassFinder.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-f150b17c","path":"/en/api/public/com/highcapable/yukihookapi/hook/core/api/compat/type/ExecutorType.html","title":"ExecutorType - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"UNKNOWN - enum","slug":"unknown-enum","link":"#unknown-enum","children":[]},{"level":2,"title":"XPOSED - enum","slug":"xposed-enum","link":"#xposed-enum","children":[]},{"level":2,"title":"LSPOSED_LSPATCH - enum","slug":"lsposed-lspatch-enum","link":"#lsposed-lspatch-enum","children":[]},{"level":2,"title":"ED_XPOSED - enum","slug":"ed-xposed-enum","link":"#ed-xposed-enum","children":[]},{"level":2,"title":"TAICHI_XPOSED - enum","slug":"taichi-xposed-enum","link":"#taichi-xposed-enum","children":[]},{"level":2,"title":"BUG_XPOSED - enum","slug":"bug-xposed-enum","link":"#bug-xposed-enum","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":2}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/core/api/compat/type/ExecutorType.md"}');export{e as data};

View File

@@ -0,0 +1,8 @@
import{_ as e,o as s,c as a,a as o}from"./app-BpUB8-Q8.js";const n={},c=o(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="executortype-class" tabindex="-1"><a class="header-anchor" href="#executortype-class" aria-hidden="true">#</a> ExecutorType <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">enum</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">ExecutorType</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.9</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>Hook Framework 类型定义。</p></blockquote><p>定义了目前已知使用频率较高的 Hook Framework。</p><p>后期根据 Hook Framework 特征和使用情况将会继续添加新的类型。</p><p>无法识别的 Hook Framework 将被定义为 <code>UNKNOWN</code>。</p><h2 id="unknown-enum" tabindex="-1"><a class="header-anchor" href="#unknown-enum" aria-hidden="true">#</a> UNKNOWN <span class="symbol">- enum</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#ADBAC7;">UNKNOWN</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.9</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>未知类型。</p></blockquote><h2 id="xposed-enum" tabindex="-1"><a class="header-anchor" href="#xposed-enum" aria-hidden="true">#</a> XPOSED <span class="symbol">- enum</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#ADBAC7;">XPOSED</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.9</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>原版、第三方 Xposed。</p></blockquote><h2 id="lsposed-lspatch-enum" tabindex="-1"><a class="header-anchor" href="#lsposed-lspatch-enum" aria-hidden="true">#</a> LSPOSED_LSPATCH <span class="symbol">- enum</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#ADBAC7;">LSPOSED_LSPATCH</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.9</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>LSPosed、LSPatch。</p></blockquote><h2 id="ed-xposed-enum" tabindex="-1"><a class="header-anchor" href="#ed-xposed-enum" aria-hidden="true">#</a> ED_XPOSED <span class="symbol">- enum</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#ADBAC7;">ED_XPOSED</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.9</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>EdXposed。</p></blockquote><h2 id="taichi-xposed-enum" tabindex="-1"><a class="header-anchor" href="#taichi-xposed-enum" aria-hidden="true">#</a> TAICHI_XPOSED <span class="symbol">- enum</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#ADBAC7;">TAICHI_XPOSED</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.9</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>TaiChi (太极)。</p></blockquote><h2 id="bug-xposed-enum" tabindex="-1"><a class="header-anchor" href="#bug-xposed-enum" aria-hidden="true">#</a> BUG_XPOSED <span class="symbol">- enum</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#ADBAC7;">BUG_XPOSED</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.9</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>BugXposed (应用转生)。</p></blockquote>`,46),p=[c];function d(t,l){return s(),a("div",null,p)}const i=e(n,[["render",d],["__file","ExecutorType.html.vue"]]);export{i as default};

View File

@@ -0,0 +1,8 @@
import{_ as e,o as s,c as a,a as o}from"./app-BpUB8-Q8.js";const n={},t=o(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="executortype-class" tabindex="-1"><a class="header-anchor" href="#executortype-class" aria-hidden="true">#</a> ExecutorType <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">enum</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">ExecutorType</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.9</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>Hook Framework 类型定义。</p></blockquote><p>定义了目前已知使用频率较高的 Hook Framework。</p><p>后期根据 Hook Framework 特征和使用情况将会继续添加新的类型。</p><p>无法识别的 Hook Framework 将被定义为 <code>UNKNOWN</code>。</p><h2 id="unknown-enum" tabindex="-1"><a class="header-anchor" href="#unknown-enum" aria-hidden="true">#</a> UNKNOWN <span class="symbol">- enum</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#ADBAC7;">UNKNOWN</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.9</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>未知类型。</p></blockquote><h2 id="xposed-enum" tabindex="-1"><a class="header-anchor" href="#xposed-enum" aria-hidden="true">#</a> XPOSED <span class="symbol">- enum</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#ADBAC7;">XPOSED</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.9</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>原版、第三方 Xposed。</p></blockquote><h2 id="lsposed-lspatch-enum" tabindex="-1"><a class="header-anchor" href="#lsposed-lspatch-enum" aria-hidden="true">#</a> LSPOSED_LSPATCH <span class="symbol">- enum</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#ADBAC7;">LSPOSED_LSPATCH</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.9</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>LSPosed、LSPatch。</p></blockquote><h2 id="ed-xposed-enum" tabindex="-1"><a class="header-anchor" href="#ed-xposed-enum" aria-hidden="true">#</a> ED_XPOSED <span class="symbol">- enum</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#ADBAC7;">ED_XPOSED</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.9</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>EdXposed。</p></blockquote><h2 id="taichi-xposed-enum" tabindex="-1"><a class="header-anchor" href="#taichi-xposed-enum" aria-hidden="true">#</a> TAICHI_XPOSED <span class="symbol">- enum</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#ADBAC7;">TAICHI_XPOSED</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.9</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>TaiChi (太极)。</p></blockquote><h2 id="bug-xposed-enum" tabindex="-1"><a class="header-anchor" href="#bug-xposed-enum" aria-hidden="true">#</a> BUG_XPOSED <span class="symbol">- enum</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#ADBAC7;">BUG_XPOSED</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.9</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>BugXposed (应用转生)。</p></blockquote>`,47),c=[t];function d(p,l){return s(),a("div",null,c)}const i=e(n,[["render",d],["__file","ExecutorType.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-2728e033","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/core/api/compat/type/ExecutorType.html","title":"ExecutorType - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"UNKNOWN - enum","slug":"unknown-enum","link":"#unknown-enum","children":[]},{"level":2,"title":"XPOSED - enum","slug":"xposed-enum","link":"#xposed-enum","children":[]},{"level":2,"title":"LSPOSED_LSPATCH - enum","slug":"lsposed-lspatch-enum","link":"#lsposed-lspatch-enum","children":[]},{"level":2,"title":"ED_XPOSED - enum","slug":"ed-xposed-enum","link":"#ed-xposed-enum","children":[]},{"level":2,"title":"TAICHI_XPOSED - enum","slug":"taichi-xposed-enum","link":"#taichi-xposed-enum","children":[]},{"level":2,"title":"BUG_XPOSED - enum","slug":"bug-xposed-enum","link":"#bug-xposed-enum","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":2}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/core/api/compat/type/ExecutorType.md"}');export{e as data};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-22449c48","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/members/FieldFinder.html","title":"FieldFinder - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"name - field","slug":"name-field","link":"#name-field","children":[]},{"level":2,"title":"type - field","slug":"type-field","link":"#type-field","children":[]},{"level":2,"title":"modifiers - method","slug":"modifiers-method","link":"#modifiers-method","children":[]},{"level":2,"title":"order - method","slug":"order-method","link":"#order-method","children":[]},{"level":2,"title":"name - method","slug":"name-method","link":"#name-method","children":[]},{"level":2,"title":"name - method","slug":"name-method-1","link":"#name-method-1","children":[]},{"level":2,"title":"type - method","slug":"type-method","link":"#type-method","children":[]},{"level":2,"title":"type - method","slug":"type-method-1","link":"#type-method-1","children":[]},{"level":2,"title":"superClass - method","slug":"superclass-method","link":"#superclass-method","children":[]},{"level":2,"title":"RemedyPlan - class","slug":"remedyplan-class","link":"#remedyplan-class","children":[{"level":3,"title":"field - method","slug":"field-method","link":"#field-method","children":[]},{"level":3,"title":"Result - class","slug":"result-class","link":"#result-class","children":[]}]},{"level":2,"title":"Result - class","slug":"result-class-1","link":"#result-class-1","children":[{"level":3,"title":"result - method","slug":"result-method","link":"#result-method","children":[]},{"level":3,"title":"get - method","slug":"get-method","link":"#get-method","children":[]},{"level":3,"title":"all - method","slug":"all-method","link":"#all-method","children":[]},{"level":3,"title":"give - method","slug":"give-method","link":"#give-method","children":[]},{"level":3,"title":"giveAll - method","slug":"giveall-method","link":"#giveall-method","children":[]},{"level":3,"title":"wait - method","slug":"wait-method","link":"#wait-method","children":[]},{"level":3,"title":"waitAll - method","slug":"waitall-method","link":"#waitall-method","children":[]},{"level":3,"title":"remedys - method","slug":"remedys-method","link":"#remedys-method","children":[]},{"level":3,"title":"onNoSuchField - method","slug":"onnosuchfield-method","link":"#onnosuchfield-method","children":[]},{"level":3,"title":"ignored - method","slug":"ignored-method","link":"#ignored-method","children":[]},{"level":3,"title":"Instance - class","slug":"instance-class","link":"#instance-class","children":[]}]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":10}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/members/FieldFinder.md"}');export{e as data};

View File

@@ -0,0 +1,84 @@
import{_ as s,o as e,c as o,a as n}from"./app-BpUB8-Q8.js";const a={},l=n(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="fieldfinder-class" tabindex="-1"><a class="header-anchor" href="#fieldfinder-class" aria-hidden="true">#</a> FieldFinder <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">FieldFinder</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">override</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> classSet: </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;?) : </span><span style="color:#F69D50;">MemberBaseFinder</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.2</code> <code>modified</code></p><p>合并到 <code>BaseFinder</code></p><p><code>v1.1.0</code> <code>modified</code></p><p>合并到 <code>MemberBaseFinder</code></p><p><code>v1.1.8</code> <code>modified</code></p><p>移动 <code>hookInstance</code> 参数到 <code>MemberBaseFinder.MemberHookerManager</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Field</code> 查找类。</p></blockquote><p>可通过指定类型查找指定 <code>Field</code> 或一组 <code>Field</code>。</p><h2 class="deprecated">classSet - field</h2><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.2</code> <code>移除</code></p><h2 id="name-field" tabindex="-1"><a class="header-anchor" href="#name-field" aria-hidden="true">#</a> name <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.70</code> <code>modified</code></p><p>允许不填写名称</p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Field</code> 名称。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>若不填写名称则必须存在一个其它条件。</p></div><h2 id="type-field" tabindex="-1"><a class="header-anchor" href="#type-field" aria-hidden="true">#</a> type <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> type: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Field</code> 类型。</p></blockquote><p>可不填写类型。</p><h2 id="modifiers-method" tabindex="-1"><a class="header-anchor" href="#modifiers-method" aria-hidden="true">#</a> modifiers <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">modifiers</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ModifierConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.67</code> <code>added</code></p><p><code>v1.0.80</code> <code>modified</code></p><p>将方法体进行 inline</p><p><code>v1.1.0</code> <code>modified</code></p><p>合并到 <code>ModifierConditions</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Field</code> 标识符筛选条件。</p></blockquote><p>可不设置筛选条件。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="order-method" tabindex="-1"><a class="header-anchor" href="#order-method" aria-hidden="true">#</a> order <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">order</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>顺序筛选字节码的下标。</p></blockquote><h2 id="name-method" tabindex="-1"><a class="header-anchor" href="#name-method" aria-hidden="true">#</a> name <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">name</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Field</code> 名称。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>若不填写名称则必须存在一个其它条件。</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="name-method-1" tabindex="-1"><a class="header-anchor" href="#name-method-1" aria-hidden="true">#</a> name <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">name</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">NameConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.88</code> <code>added</code></p><p><code>v1.1.0</code> <code>modified</code></p><p>合并到 <code>NameConditions</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Field</code> 名称条件。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>若不填写名称则必须存在一个其它条件。</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="type-method" tabindex="-1"><a class="header-anchor" href="#type-method" aria-hidden="true">#</a> type <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">type</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Field</code> 类型。</p></blockquote><p>可不填写类型。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="type-method-1" tabindex="-1"><a class="header-anchor" href="#type-method-1" aria-hidden="true">#</a> type <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">type</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ObjectConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.5</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Field</code> 类型条件。</p></blockquote><p>可不填写类型。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="superclass-method" tabindex="-1"><a class="header-anchor" href="#superclass-method" aria-hidden="true">#</a> superClass <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">superClass</span><span style="color:#ADBAC7;">(isOnlySuperClass: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.80</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置在 <code>classSet</code> 的所有父类中查找当前 <code>Field</code>。</p></blockquote><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>若当前 <strong>classSet</strong> 的父类较多可能会耗时API 会自动循环到父类继承是 <strong>Any</strong> 前的最后一个类。</p></div><h2 id="remedyplan-class" tabindex="-1"><a class="header-anchor" href="#remedyplan-class" aria-hidden="true">#</a> RemedyPlan <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">RemedyPlan</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Field</code> 重查找实现类,可累计失败次数直到查找成功。</p></blockquote><h3 id="field-method" tabindex="-1"><a class="header-anchor" href="#field-method" aria-hidden="true">#</a> field <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">field</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">FieldConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>创建需要重新查找的 <code>Field</code>。</p></blockquote><p>你可以添加多个备选 <code>Field</code>,直到成功为止,若最后依然失败,将停止查找并输出错误日志。</p><h3 id="result-class" tabindex="-1"><a class="header-anchor" href="#result-class" aria-hidden="true">#</a> Result <span class="symbol">- class</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>RemedyPlan</code> 结果实现类。</p></blockquote><h4 id="onfind-method" tabindex="-1"><a class="header-anchor" href="#onfind-method" aria-hidden="true">#</a> onFind <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onFind</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Field</span><span style="color:#ADBAC7;">&gt;.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><code>v1.2.0</code> <code>modified</code></p><p><code>initiate</code> 类型由 <code>HashSet</code> 修改为 <code>MutableList</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>当在 <code>RemedyPlan</code> 中找到结果时。</p></blockquote><p><strong>功能示例</strong></p><p>你可以方便地对重查找的 <code>Field</code> 实现 <code>onFind</code> 方法。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">field</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">onFind</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="result-class-1" tabindex="-1"><a class="header-anchor" href="#result-class-1" aria-hidden="true">#</a> Result <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> isNoSuch: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">, </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> throwable: </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">?) : </span><span style="color:#F69D50;">BaseResult</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.1.0</code> <code>modified</code></p><p>继承到接口 <code>BaseResult</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Field</code> 查找结果实现类。</p></blockquote><h3 id="result-method" tabindex="-1"><a class="header-anchor" href="#result-method" aria-hidden="true">#</a> result <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.80</code> <code>modified</code></p><p>将方法体进行 inline</p><p><strong>Function Illustrate</strong></p><blockquote><p>创建监听结果事件方法体。</p></blockquote><p><strong>功能示例</strong></p><p>你可以使用 <strong>lambda</strong> 形式创建 <code>Result</code> 类。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">field</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">get</span><span style="color:#ADBAC7;">(instance).</span><span style="color:#DCBDFB;">set</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;something&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">get</span><span style="color:#ADBAC7;">(instance).</span><span style="color:#DCBDFB;">string</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">get</span><span style="color:#ADBAC7;">(instance).</span><span style="color:#DCBDFB;">cast</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">CustomClass</span><span style="color:#ADBAC7;">&gt;()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">get</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">boolean</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(instance)</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">give</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">giveAll</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchField</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="get-method" tabindex="-1"><a class="header-anchor" href="#get-method" aria-hidden="true">#</a> get <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">(instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Instance</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得 <code>Field</code> 实例处理类。</p></blockquote><p>若有多个 <code>Field</code> 结果只会返回第一个。</p><p><strong>功能示例</strong></p><p>你可以轻松地得到 <code>Field</code> 的实例以及使用它进行设置实例。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">field</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">(instance).</span><span style="color:#DCBDFB;">set</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;something&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>如果你取到的是静态 <code>Field</code>,可以不需要设置实例。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">field</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">set</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;something&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="all-method" tabindex="-1"><a class="header-anchor" href="#all-method" aria-hidden="true">#</a> all <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><code>v1.2.0</code> <code>modified</code></p><p>返回值类型由 <code>ArrayList</code> 修改为 <code>MutableList</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得 <code>Field</code> 实例处理类数组。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Field</code> 实例结果。</p><p><strong>功能示例</strong></p><p>你可以通过此方法来获得当前条件结果中匹配的全部 <code>Field</code>,其 <code>Field</code> 所在实例用法与 <code>get</code> 相同。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">field</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(instance).</span><span style="color:#DCBDFB;">forEach</span><span style="color:#ADBAC7;"> { instance </span><span style="color:#F47067;">-&gt;</span></span>
<span class="line"><span style="color:#ADBAC7;"> instance.self</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="give-method" tabindex="-1"><a class="header-anchor" href="#give-method" aria-hidden="true">#</a> give <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">give</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Field</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到 <code>Field</code> 本身。</p></blockquote><p>若有多个 Field 结果只会返回第一个。</p><p>在查找条件找不到任何结果的时候将返回 <code>null</code>。</p><h3 id="giveall-method" tabindex="-1"><a class="header-anchor" href="#giveall-method" aria-hidden="true">#</a> giveAll <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">giveAll</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Field</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><code>v1.2.0</code> <code>modified</code></p><p>返回值类型由 <code>HashSet</code> 修改为 <code>MutableList</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到 <code>Field</code> 本身数组。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Field</code> 实例。</p><p>在查找条件找不到任何结果的时候将返回空的 <code>MutableList</code>。</p><h3 id="wait-method" tabindex="-1"><a class="header-anchor" href="#wait-method" aria-hidden="true">#</a> wait <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">wait</span><span style="color:#ADBAC7;">(instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?, initiate: </span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得 <code>Field</code> 实例处理类,配合 <code>RemedyPlan</code> 使用。</p></blockquote><p>若有多个 <code>Field</code> 结果只会返回第一个。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>若你设置了 <strong>remedys</strong> 必须使用此方法才能获得结果。</p><p>若你没有设置 <strong>remedys</strong> 此方法将不会被回调。</p></div><h3 id="waitall-method" tabindex="-1"><a class="header-anchor" href="#waitall-method" aria-hidden="true">#</a> waitAll <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">waitAll</span><span style="color:#ADBAC7;">(instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?, initiate: </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">&gt;.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><code>v1.2.0</code> <code>modified</code></p><p><code>initiate</code> 类型由 <code>ArrayList</code> 修改为 <code>MutableList</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得 <code>Field</code> 实例处理类数组,配合 <code>RemedyPlan</code> 使用。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Field</code> 实例结果。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>若你设置了 <strong>remedys</strong> 必须使用此方法才能获得结果。</p><p>若你没有设置 <strong>remedys</strong> 此方法将不会被回调。</p></div><h3 id="remedys-method" tabindex="-1"><a class="header-anchor" href="#remedys-method" aria-hidden="true">#</a> remedys <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">RemedyPlan</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>创建 <code>Field</code> 重查找功能。</p></blockquote><p><strong>功能示例</strong></p><p>当你遇到一种 <code>Field</code> 可能存在不同形式的存在时,可以使用 <code>RemedyPlan</code> 重新查找它,而没有必要使用 <code>onNoSuchField</code> 捕获异常二次查找 <code>Field</code>。</p><p>若第一次查找失败了,你还可以在这里继续添加此方法体直到成功为止。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">field</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">field</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">field</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="onnosuchfield-method" tabindex="-1"><a class="header-anchor" href="#onnosuchfield-method" aria-hidden="true">#</a> onNoSuchField <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchField</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>监听找不到 <code>Field</code> 时。</p></blockquote><h3 id="ignored-method" tabindex="-1"><a class="header-anchor" href="#ignored-method" aria-hidden="true">#</a> ignored <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">ignored</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>忽略异常并停止打印任何错误日志。</p></blockquote><p>若 <code>MemberBaseFinder.MemberHookerManager.isNotIgnoredNoSuchMemberFailure</code> 为 <code>false</code> 则自动忽略。</p><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>此时若要监听异常结果,你需要手动实现 <strong>onNoSuchField</strong> 方法。</p></div><h3 class="deprecated">ignoredError - method</h3><p><strong>Change Records</strong></p><p><code>v1.0.3</code> <code>added</code></p><p><code>v1.1.0</code> <code>deprecated</code></p><p>请迁移到新方法 <code>ignored()</code></p><h3 id="instance-class" tabindex="-1"><a class="header-anchor" href="#instance-class" aria-hidden="true">#</a> Instance <span class="symbol">- class</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?, </span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">field</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">Field</span><span style="color:#ADBAC7;">?)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.1.0</code> <code>modified</code></p><p>新增 <code>field</code> 参数</p><p>不再对外公开 <code>self</code> 参数</p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Field</code> 实例变量处理类。</p></blockquote><h4 class="deprecated">self - field</h4><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.1.0</code> <code>移除</code></p><p>请直接使用 <code>any</code> 方法得到 <code>Field</code> 自身的实例化对象</p><h4 id="current-method" tabindex="-1"><a class="header-anchor" href="#current-method" aria-hidden="true">#</a> current <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">current</span><span style="color:#ADBAC7;">(ignored: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">CurrentClass</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">current</span><span style="color:#ADBAC7;">(ignored: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">, initiate: </span><span style="color:#F69D50;">CurrentClass</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得当前 <code>Field</code> 自身 <code>self</code> 实例的类操作对象 <code>CurrentClass</code>。</p></blockquote><h4 id="cast-method" tabindex="-1"><a class="header-anchor" href="#cast-method" aria-hidden="true">#</a> cast <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">cast</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>of</code></s> 为 <code>cast</code></p><p>移动方法到 <code>Instance</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到当前 <code>Field</code> 实例。</p></blockquote><h4 id="byte-method" tabindex="-1"><a class="header-anchor" href="#byte-method" aria-hidden="true">#</a> byte <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">byte</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Byte</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.68</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到当前 <code>Field</code> Byte 实例。</p></blockquote><h4 id="int-method" tabindex="-1"><a class="header-anchor" href="#int-method" aria-hidden="true">#</a> int <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">int</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.65</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>ofInt</code></s> 为 <code>int</code></p><p>移动方法到 <code>Instance</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到当前 <code>Field</code> Int 实例。</p></blockquote><h4 id="long-method" tabindex="-1"><a class="header-anchor" href="#long-method" aria-hidden="true">#</a> long <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">long</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Long</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.65</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>ofLong</code></s> 为 <code>long</code></p><p>移动方法到 <code>Instance</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到当前 <code>Field</code> Long 实例。</p></blockquote><h4 id="short-method" tabindex="-1"><a class="header-anchor" href="#short-method" aria-hidden="true">#</a> short <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">short</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Short</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.65</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>ofShort</code></s> 为 <code>short</code></p><p>移动方法到 <code>Instance</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到当前 <code>Field</code> Short 实例。</p></blockquote><h4 id="double-method" tabindex="-1"><a class="header-anchor" href="#double-method" aria-hidden="true">#</a> double <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">double</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Double</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.65</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>ofDouble</code></s> 为 <code>double</code></p><p>移动方法到 <code>Instance</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到当前 <code>Field</code> Double 实例。</p></blockquote><h4 id="float-method" tabindex="-1"><a class="header-anchor" href="#float-method" aria-hidden="true">#</a> float <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">float</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Float</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.65</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>ofFloat</code></s> 为 <code>float</code></p><p>移动方法到 <code>Instance</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到当前 <code>Field</code> Float 实例。</p></blockquote><h4 id="string-method" tabindex="-1"><a class="header-anchor" href="#string-method" aria-hidden="true">#</a> string <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">string</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.65</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>ofString</code></s> 为 <code>string</code></p><p>移动方法到 <code>Instance</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到当前 <code>Field</code> String 实例。</p></blockquote><h4 id="char-method" tabindex="-1"><a class="header-anchor" href="#char-method" aria-hidden="true">#</a> char <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">char</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Char</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.68</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到当前 <code>Field</code> Char 实例。</p></blockquote><h4 id="boolean-method" tabindex="-1"><a class="header-anchor" href="#boolean-method" aria-hidden="true">#</a> boolean <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">boolean</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.65</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>ofBoolean</code></s> 为 <code>boolean</code></p><p>移动方法到 <code>Instance</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到当前 <code>Field</code> Boolean 实例。</p></blockquote><h4 id="any-method" tabindex="-1"><a class="header-anchor" href="#any-method" aria-hidden="true">#</a> any <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">any</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.65</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>ofAny</code></s> 为 <code>any</code></p><p>移动方法到 <code>Instance</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到当前 <code>Field</code> Any 实例。</p></blockquote><h4 id="array-method" tabindex="-1"><a class="header-anchor" href="#array-method" aria-hidden="true">#</a> array <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">array</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Array</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.68</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到当前 <code>Field</code> Array 实例。</p></blockquote><h4 id="list-method" tabindex="-1"><a class="header-anchor" href="#list-method" aria-hidden="true">#</a> list <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">list</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">List</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.68</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到当前 <code>Field</code> List 实例。</p></blockquote><h4 id="set-method" tabindex="-1"><a class="header-anchor" href="#set-method" aria-hidden="true">#</a> set <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">set</span><span style="color:#ADBAC7;">(any: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置当前 <code>Field</code> 实例。</p></blockquote><h4 id="settrue-method" tabindex="-1"><a class="header-anchor" href="#settrue-method" aria-hidden="true">#</a> setTrue <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">setTrue</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置当前 <code>Field</code> 实例为 <code>true</code>。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>请确保实例对象类型为 <strong>Boolean</strong>。</p></div><h4 id="setfalse-method" tabindex="-1"><a class="header-anchor" href="#setfalse-method" aria-hidden="true">#</a> setFalse <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">setFalse</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置当前 <code>Field</code> 实例为 <code>false</code>。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>请确保实例对象类型为 <strong>Boolean</strong>。</p></div><h4 id="setnull-method" tabindex="-1"><a class="header-anchor" href="#setnull-method" aria-hidden="true">#</a> setNull <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">setNull</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置当前 <code>Field</code> 实例为 <code>null</code>。</p></blockquote>`,388),p=[l];function c(t,d){return e(),o("div",null,p)}const i=s(a,[["render",c],["__file","FieldFinder.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-42e0f0ab","path":"/en/api/public/com/highcapable/yukihookapi/hook/core/finder/members/FieldFinder.html","title":"FieldFinder - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"name - field","slug":"name-field","link":"#name-field","children":[]},{"level":2,"title":"type - field","slug":"type-field","link":"#type-field","children":[]},{"level":2,"title":"modifiers - method","slug":"modifiers-method","link":"#modifiers-method","children":[]},{"level":2,"title":"order - method","slug":"order-method","link":"#order-method","children":[]},{"level":2,"title":"name - method","slug":"name-method","link":"#name-method","children":[]},{"level":2,"title":"name - method","slug":"name-method-1","link":"#name-method-1","children":[]},{"level":2,"title":"type - method","slug":"type-method","link":"#type-method","children":[]},{"level":2,"title":"type - method","slug":"type-method-1","link":"#type-method-1","children":[]},{"level":2,"title":"superClass - method","slug":"superclass-method","link":"#superclass-method","children":[]},{"level":2,"title":"RemedyPlan - class","slug":"remedyplan-class","link":"#remedyplan-class","children":[{"level":3,"title":"field - method","slug":"field-method","link":"#field-method","children":[]},{"level":3,"title":"Result - class","slug":"result-class","link":"#result-class","children":[]}]},{"level":2,"title":"Result - class","slug":"result-class-1","link":"#result-class-1","children":[{"level":3,"title":"result - method","slug":"result-method","link":"#result-method","children":[]},{"level":3,"title":"get - method","slug":"get-method","link":"#get-method","children":[]},{"level":3,"title":"all - method","slug":"all-method","link":"#all-method","children":[]},{"level":3,"title":"give - method","slug":"give-method","link":"#give-method","children":[]},{"level":3,"title":"giveAll - method","slug":"giveall-method","link":"#giveall-method","children":[]},{"level":3,"title":"wait - method","slug":"wait-method","link":"#wait-method","children":[]},{"level":3,"title":"waitAll - method","slug":"waitall-method","link":"#waitall-method","children":[]},{"level":3,"title":"remedys - method","slug":"remedys-method","link":"#remedys-method","children":[]},{"level":3,"title":"onNoSuchField - method","slug":"onnosuchfield-method","link":"#onnosuchfield-method","children":[]},{"level":3,"title":"ignored - method","slug":"ignored-method","link":"#ignored-method","children":[]},{"level":3,"title":"Instance - class","slug":"instance-class","link":"#instance-class","children":[]}]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":9}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/core/finder/members/FieldFinder.md"}');export{e as data};

View File

@@ -0,0 +1,84 @@
import{_ as s,o as e,c as o,a}from"./app-BpUB8-Q8.js";const n={},l=a(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="fieldfinder-class" tabindex="-1"><a class="header-anchor" href="#fieldfinder-class" aria-hidden="true">#</a> FieldFinder <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">FieldFinder</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">override</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> classSet: </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;?) : </span><span style="color:#F69D50;">MemberBaseFinder</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.2</code> <code>修改</code></p><p>合并到 <code>BaseFinder</code></p><p><code>v1.1.0</code> <code>修改</code></p><p>合并到 <code>MemberBaseFinder</code></p><p><code>v1.1.8</code> <code>修改</code></p><p>移动 <code>hookInstance</code> 参数到 <code>MemberBaseFinder.MemberHookerManager</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Field</code> 查找类。</p></blockquote><p>可通过指定类型查找指定 <code>Field</code> 或一组 <code>Field</code>。</p><h2 class="deprecated">classSet - field</h2><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.2</code> <code>移除</code></p><h2 id="name-field" tabindex="-1"><a class="header-anchor" href="#name-field" aria-hidden="true">#</a> name <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.70</code> <code>修改</code></p><p>允许不填写名称</p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Field</code> 名称。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>若不填写名称则必须存在一个其它条件。</p></div><h2 id="type-field" tabindex="-1"><a class="header-anchor" href="#type-field" aria-hidden="true">#</a> type <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> type: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Field</code> 类型。</p></blockquote><p>可不填写类型。</p><h2 id="modifiers-method" tabindex="-1"><a class="header-anchor" href="#modifiers-method" aria-hidden="true">#</a> modifiers <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">modifiers</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ModifierConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.67</code> <code>新增</code></p><p><code>v1.0.80</code> <code>修改</code></p><p>将方法体进行 inline</p><p><code>v1.1.0</code> <code>修改</code></p><p>合并到 <code>ModifierConditions</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Field</code> 标识符筛选条件。</p></blockquote><p>可不设置筛选条件。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="order-method" tabindex="-1"><a class="header-anchor" href="#order-method" aria-hidden="true">#</a> order <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">order</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>顺序筛选字节码的下标。</p></blockquote><h2 id="name-method" tabindex="-1"><a class="header-anchor" href="#name-method" aria-hidden="true">#</a> name <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">name</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Field</code> 名称。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>若不填写名称则必须存在一个其它条件。</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="name-method-1" tabindex="-1"><a class="header-anchor" href="#name-method-1" aria-hidden="true">#</a> name <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">name</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">NameConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.88</code> <code>新增</code></p><p><code>v1.1.0</code> <code>修改</code></p><p>合并到 <code>NameConditions</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Field</code> 名称条件。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>若不填写名称则必须存在一个其它条件。</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="type-method" tabindex="-1"><a class="header-anchor" href="#type-method" aria-hidden="true">#</a> type <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">type</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Field</code> 类型。</p></blockquote><p>可不填写类型。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="type-method-1" tabindex="-1"><a class="header-anchor" href="#type-method-1" aria-hidden="true">#</a> type <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">type</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ObjectConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.5</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Field</code> 类型条件。</p></blockquote><p>可不填写类型。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="superclass-method" tabindex="-1"><a class="header-anchor" href="#superclass-method" aria-hidden="true">#</a> superClass <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">superClass</span><span style="color:#ADBAC7;">(isOnlySuperClass: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.80</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置在 <code>classSet</code> 的所有父类中查找当前 <code>Field</code>。</p></blockquote><div class="custom-container warning"><p class="custom-container-title">注意</p><p>若当前 <strong>classSet</strong> 的父类较多可能会耗时API 会自动循环到父类继承是 <strong>Any</strong> 前的最后一个类。</p></div><h2 id="remedyplan-class" tabindex="-1"><a class="header-anchor" href="#remedyplan-class" aria-hidden="true">#</a> RemedyPlan <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">RemedyPlan</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Field</code> 重查找实现类,可累计失败次数直到查找成功。</p></blockquote><h3 id="field-method" tabindex="-1"><a class="header-anchor" href="#field-method" aria-hidden="true">#</a> field <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">field</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">FieldConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>创建需要重新查找的 <code>Field</code>。</p></blockquote><p>你可以添加多个备选 <code>Field</code>,直到成功为止,若最后依然失败,将停止查找并输出错误日志。</p><h3 id="result-class" tabindex="-1"><a class="header-anchor" href="#result-class" aria-hidden="true">#</a> Result <span class="symbol">- class</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p><code>RemedyPlan</code> 结果实现类。</p></blockquote><h4 id="onfind-method" tabindex="-1"><a class="header-anchor" href="#onfind-method" aria-hidden="true">#</a> onFind <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onFind</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Field</span><span style="color:#ADBAC7;">&gt;.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><code>v1.2.0</code> <code>修改</code></p><p><code>initiate</code> 类型由 <code>HashSet</code> 修改为 <code>MutableList</code></p><p><strong>功能描述</strong></p><blockquote><p>当在 <code>RemedyPlan</code> 中找到结果时。</p></blockquote><p><strong>功能示例</strong></p><p>你可以方便地对重查找的 <code>Field</code> 实现 <code>onFind</code> 方法。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">field</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">onFind</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="result-class-1" tabindex="-1"><a class="header-anchor" href="#result-class-1" aria-hidden="true">#</a> Result <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> isNoSuch: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">, </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> throwable: </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">?) : </span><span style="color:#F69D50;">BaseResult</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.1.0</code> <code>修改</code></p><p>继承到接口 <code>BaseResult</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Field</code> 查找结果实现类。</p></blockquote><h3 id="result-method" tabindex="-1"><a class="header-anchor" href="#result-method" aria-hidden="true">#</a> result <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.80</code> <code>修改</code></p><p>将方法体进行 inline</p><p><strong>功能描述</strong></p><blockquote><p>创建监听结果事件方法体。</p></blockquote><p><strong>功能示例</strong></p><p>你可以使用 <strong>lambda</strong> 形式创建 <code>Result</code> 类。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">field</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">get</span><span style="color:#ADBAC7;">(instance).</span><span style="color:#DCBDFB;">set</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;something&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">get</span><span style="color:#ADBAC7;">(instance).</span><span style="color:#DCBDFB;">string</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">get</span><span style="color:#ADBAC7;">(instance).</span><span style="color:#DCBDFB;">cast</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">CustomClass</span><span style="color:#ADBAC7;">&gt;()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">get</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">boolean</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(instance)</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">give</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">giveAll</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchField</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="get-method" tabindex="-1"><a class="header-anchor" href="#get-method" aria-hidden="true">#</a> get <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">(instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Instance</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>获得 <code>Field</code> 实例处理类。</p></blockquote><p>若有多个 <code>Field</code> 结果只会返回第一个。</p><p><strong>功能示例</strong></p><p>你可以轻松地得到 <code>Field</code> 的实例以及使用它进行设置实例。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">field</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">(instance).</span><span style="color:#DCBDFB;">set</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;something&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>如果你取到的是静态 <code>Field</code>,可以不需要设置实例。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">field</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">set</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;something&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="all-method" tabindex="-1"><a class="header-anchor" href="#all-method" aria-hidden="true">#</a> all <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><code>v1.2.0</code> <code>修改</code></p><p>返回值类型由 <code>ArrayList</code> 修改为 <code>MutableList</code></p><p><strong>功能描述</strong></p><blockquote><p>获得 <code>Field</code> 实例处理类数组。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Field</code> 实例结果。</p><p><strong>功能示例</strong></p><p>你可以通过此方法来获得当前条件结果中匹配的全部 <code>Field</code>,其 <code>Field</code> 所在实例用法与 <code>get</code> 相同。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">field</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(instance).</span><span style="color:#DCBDFB;">forEach</span><span style="color:#ADBAC7;"> { instance </span><span style="color:#F47067;">-&gt;</span></span>
<span class="line"><span style="color:#ADBAC7;"> instance.self</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="give-method" tabindex="-1"><a class="header-anchor" href="#give-method" aria-hidden="true">#</a> give <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">give</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Field</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>得到 <code>Field</code> 本身。</p></blockquote><p>若有多个 Field 结果只会返回第一个。</p><p>在查找条件找不到任何结果的时候将返回 <code>null</code>。</p><h3 id="giveall-method" tabindex="-1"><a class="header-anchor" href="#giveall-method" aria-hidden="true">#</a> giveAll <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">giveAll</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Field</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><code>v1.2.0</code> <code>修改</code></p><p>返回值类型由 <code>HashSet</code> 修改为 <code>MutableList</code></p><p><strong>功能描述</strong></p><blockquote><p>得到 <code>Field</code> 本身数组。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Field</code> 实例。</p><p>在查找条件找不到任何结果的时候将返回空的 <code>MutableList</code>。</p><h3 id="wait-method" tabindex="-1"><a class="header-anchor" href="#wait-method" aria-hidden="true">#</a> wait <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">wait</span><span style="color:#ADBAC7;">(instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?, initiate: </span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获得 <code>Field</code> 实例处理类,配合 <code>RemedyPlan</code> 使用。</p></blockquote><p>若有多个 <code>Field</code> 结果只会返回第一个。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>若你设置了 <strong>remedys</strong> 必须使用此方法才能获得结果。</p><p>若你没有设置 <strong>remedys</strong> 此方法将不会被回调。</p></div><h3 id="waitall-method" tabindex="-1"><a class="header-anchor" href="#waitall-method" aria-hidden="true">#</a> waitAll <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">waitAll</span><span style="color:#ADBAC7;">(instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?, initiate: </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">&gt;.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><code>v1.2.0</code> <code>修改</code></p><p><code>initiate</code> 类型由 <code>ArrayList</code> 修改为 <code>MutableList</code></p><p><strong>功能描述</strong></p><blockquote><p>获得 <code>Field</code> 实例处理类数组,配合 <code>RemedyPlan</code> 使用。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Field</code> 实例结果。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>若你设置了 <strong>remedys</strong> 必须使用此方法才能获得结果。</p><p>若你没有设置 <strong>remedys</strong> 此方法将不会被回调。</p></div><h3 id="remedys-method" tabindex="-1"><a class="header-anchor" href="#remedys-method" aria-hidden="true">#</a> remedys <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">RemedyPlan</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>创建 <code>Field</code> 重查找功能。</p></blockquote><p><strong>功能示例</strong></p><p>当你遇到一种 <code>Field</code> 可能存在不同形式的存在时,可以使用 <code>RemedyPlan</code> 重新查找它,而没有必要使用 <code>onNoSuchField</code> 捕获异常二次查找 <code>Field</code>。</p><p>若第一次查找失败了,你还可以在这里继续添加此方法体直到成功为止。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">field</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">field</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">field</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="onnosuchfield-method" tabindex="-1"><a class="header-anchor" href="#onnosuchfield-method" aria-hidden="true">#</a> onNoSuchField <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchField</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>监听找不到 <code>Field</code> 时。</p></blockquote><h3 id="ignored-method" tabindex="-1"><a class="header-anchor" href="#ignored-method" aria-hidden="true">#</a> ignored <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">ignored</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>忽略异常并停止打印任何错误日志。</p></blockquote><p>若 <code>MemberBaseFinder.MemberHookerManager.isNotIgnoredNoSuchMemberFailure</code> 为 <code>false</code> 则自动忽略。</p><div class="custom-container warning"><p class="custom-container-title">注意</p><p>此时若要监听异常结果,你需要手动实现 <strong>onNoSuchField</strong> 方法。</p></div><h3 class="deprecated">ignoredError - method</h3><p><strong>变更记录</strong></p><p><code>v1.0.3</code> <code>新增</code></p><p><code>v1.1.0</code> <code>作废</code></p><p>请迁移到新方法 <code>ignored()</code></p><h3 id="instance-class" tabindex="-1"><a class="header-anchor" href="#instance-class" aria-hidden="true">#</a> Instance <span class="symbol">- class</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?, </span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">field</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">Field</span><span style="color:#ADBAC7;">?)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.1.0</code> <code>修改</code></p><p>新增 <code>field</code> 参数</p><p>不再对外公开 <code>self</code> 参数</p><p><strong>功能描述</strong></p><blockquote><p><code>Field</code> 实例变量处理类。</p></blockquote><h4 class="deprecated">self - field</h4><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.1.0</code> <code>移除</code></p><p>请直接使用 <code>any</code> 方法得到 <code>Field</code> 自身的实例化对象</p><h4 id="current-method" tabindex="-1"><a class="header-anchor" href="#current-method" aria-hidden="true">#</a> current <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">current</span><span style="color:#ADBAC7;">(ignored: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">CurrentClass</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">current</span><span style="color:#ADBAC7;">(ignored: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">, initiate: </span><span style="color:#F69D50;">CurrentClass</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获得当前 <code>Field</code> 自身 <code>self</code> 实例的类操作对象 <code>CurrentClass</code>。</p></blockquote><h4 id="cast-method" tabindex="-1"><a class="header-anchor" href="#cast-method" aria-hidden="true">#</a> cast <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">cast</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>of</code></s> 为 <code>cast</code></p><p>移动方法到 <code>Instance</code></p><p><strong>功能描述</strong></p><blockquote><p>得到当前 <code>Field</code> 实例。</p></blockquote><h4 id="byte-method" tabindex="-1"><a class="header-anchor" href="#byte-method" aria-hidden="true">#</a> byte <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">byte</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Byte</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.68</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>得到当前 <code>Field</code> Byte 实例。</p></blockquote><h4 id="int-method" tabindex="-1"><a class="header-anchor" href="#int-method" aria-hidden="true">#</a> int <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">int</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.65</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>ofInt</code></s> 为 <code>int</code></p><p>移动方法到 <code>Instance</code></p><p><strong>功能描述</strong></p><blockquote><p>得到当前 <code>Field</code> Int 实例。</p></blockquote><h4 id="long-method" tabindex="-1"><a class="header-anchor" href="#long-method" aria-hidden="true">#</a> long <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">long</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Long</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.65</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>ofLong</code></s> 为 <code>long</code></p><p>移动方法到 <code>Instance</code></p><p><strong>功能描述</strong></p><blockquote><p>得到当前 <code>Field</code> Long 实例。</p></blockquote><h4 id="short-method" tabindex="-1"><a class="header-anchor" href="#short-method" aria-hidden="true">#</a> short <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">short</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Short</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.65</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>ofShort</code></s> 为 <code>short</code></p><p>移动方法到 <code>Instance</code></p><p><strong>功能描述</strong></p><blockquote><p>得到当前 <code>Field</code> Short 实例。</p></blockquote><h4 id="double-method" tabindex="-1"><a class="header-anchor" href="#double-method" aria-hidden="true">#</a> double <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">double</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Double</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.65</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>ofDouble</code></s> 为 <code>double</code></p><p>移动方法到 <code>Instance</code></p><p><strong>功能描述</strong></p><blockquote><p>得到当前 <code>Field</code> Double 实例。</p></blockquote><h4 id="float-method" tabindex="-1"><a class="header-anchor" href="#float-method" aria-hidden="true">#</a> float <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">float</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Float</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.65</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>ofFloat</code></s> 为 <code>float</code></p><p>移动方法到 <code>Instance</code></p><p><strong>功能描述</strong></p><blockquote><p>得到当前 <code>Field</code> Float 实例。</p></blockquote><h4 id="string-method" tabindex="-1"><a class="header-anchor" href="#string-method" aria-hidden="true">#</a> string <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">string</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.65</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>ofString</code></s> 为 <code>string</code></p><p>移动方法到 <code>Instance</code></p><p><strong>功能描述</strong></p><blockquote><p>得到当前 <code>Field</code> String 实例。</p></blockquote><h4 id="char-method" tabindex="-1"><a class="header-anchor" href="#char-method" aria-hidden="true">#</a> char <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">char</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Char</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.68</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>得到当前 <code>Field</code> Char 实例。</p></blockquote><h4 id="boolean-method" tabindex="-1"><a class="header-anchor" href="#boolean-method" aria-hidden="true">#</a> boolean <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">boolean</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.65</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>ofBoolean</code></s> 为 <code>boolean</code></p><p>移动方法到 <code>Instance</code></p><p><strong>功能描述</strong></p><blockquote><p>得到当前 <code>Field</code> Boolean 实例。</p></blockquote><h4 id="any-method" tabindex="-1"><a class="header-anchor" href="#any-method" aria-hidden="true">#</a> any <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">any</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.65</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>ofAny</code></s> 为 <code>any</code></p><p>移动方法到 <code>Instance</code></p><p><strong>功能描述</strong></p><blockquote><p>得到当前 <code>Field</code> Any 实例。</p></blockquote><h4 id="array-method" tabindex="-1"><a class="header-anchor" href="#array-method" aria-hidden="true">#</a> array <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">array</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Array</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.68</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>得到当前 <code>Field</code> Array 实例。</p></blockquote><h4 id="list-method" tabindex="-1"><a class="header-anchor" href="#list-method" aria-hidden="true">#</a> list <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">list</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">List</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.68</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>得到当前 <code>Field</code> List 实例。</p></blockquote><h4 id="set-method" tabindex="-1"><a class="header-anchor" href="#set-method" aria-hidden="true">#</a> set <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">set</span><span style="color:#ADBAC7;">(any: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>设置当前 <code>Field</code> 实例。</p></blockquote><h4 id="settrue-method" tabindex="-1"><a class="header-anchor" href="#settrue-method" aria-hidden="true">#</a> setTrue <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">setTrue</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>设置当前 <code>Field</code> 实例为 <code>true</code>。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>请确保实例对象类型为 <strong>Boolean</strong>。</p></div><h4 id="setfalse-method" tabindex="-1"><a class="header-anchor" href="#setfalse-method" aria-hidden="true">#</a> setFalse <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">setFalse</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>设置当前 <code>Field</code> 实例为 <code>false</code>。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>请确保实例对象类型为 <strong>Boolean</strong>。</p></div><h4 id="setnull-method" tabindex="-1"><a class="header-anchor" href="#setnull-method" aria-hidden="true">#</a> setNull <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">setNull</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>设置当前 <code>Field</code> 实例为 <code>null</code>。</p></blockquote>`,387),p=[l];function c(t,d){return e(),o("div",null,p)}const i=s(n,[["render",c],["__file","FieldFinder.html.vue"]]);export{i as default};

View File

@@ -0,0 +1,7 @@
import{_ as s,o as e,c as a,a as o}from"./app-BpUB8-Q8.js";const n={},l=o(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="fieldrules-class" tabindex="-1"><a class="header-anchor" href="#fieldrules-class" aria-hidden="true">#</a> FieldRules <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">FieldRules</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> rulesData: </span><span style="color:#F69D50;">FieldRulesData</span><span style="color:#ADBAC7;">) : </span><span style="color:#F69D50;">BaseRules</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Field</code> 查找条件实现类。</p></blockquote><h2 id="name-field" tabindex="-1"><a class="header-anchor" href="#name-field" aria-hidden="true">#</a> name <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Field</code> 名称。</p></blockquote><h2 id="type-field" tabindex="-1"><a class="header-anchor" href="#type-field" aria-hidden="true">#</a> type <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> type: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Field</code> 类型。</p></blockquote><p>可不填写类型。</p><h2 id="modifiers-method" tabindex="-1"><a class="header-anchor" href="#modifiers-method" aria-hidden="true">#</a> modifiers <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">modifiers</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ModifierConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Field</code> 标识符筛选条件。</p></blockquote><p>可不设置筛选条件。</p><h2 id="name-method" tabindex="-1"><a class="header-anchor" href="#name-method" aria-hidden="true">#</a> name <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">name</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">NameConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Field</code> 名称条件。</p></blockquote><h2 id="type-method" tabindex="-1"><a class="header-anchor" href="#type-method" aria-hidden="true">#</a> type <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">type</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ObjectConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.5</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Field</code> 类型条件。</p></blockquote><p>可不填写类型。</p>`,40),p=[l];function c(t,d){return e(),a("div",null,p)}const i=s(n,[["render",c],["__file","FieldRules.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-3e67a42e","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/FieldRules.html","title":"FieldRules - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"name - field","slug":"name-field","link":"#name-field","children":[]},{"level":2,"title":"type - field","slug":"type-field","link":"#type-field","children":[]},{"level":2,"title":"modifiers - method","slug":"modifiers-method","link":"#modifiers-method","children":[]},{"level":2,"title":"name - method","slug":"name-method","link":"#name-method","children":[]},{"level":2,"title":"type - method","slug":"type-method","link":"#type-method","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":5}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/FieldRules.md"}');export{e as data};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-21f64ebf","path":"/en/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/FieldRules.html","title":"FieldRules - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"name - field","slug":"name-field","link":"#name-field","children":[]},{"level":2,"title":"type - field","slug":"type-field","link":"#type-field","children":[]},{"level":2,"title":"modifiers - method","slug":"modifiers-method","link":"#modifiers-method","children":[]},{"level":2,"title":"name - method","slug":"name-method","link":"#name-method","children":[]},{"level":2,"title":"type - method","slug":"type-method","link":"#type-method","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":4}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/FieldRules.md"}');export{e as data};

View File

@@ -0,0 +1,7 @@
import{_ as s,o as e,c as a,a as o}from"./app-BpUB8-Q8.js";const n={},t=o(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="fieldrules-class" tabindex="-1"><a class="header-anchor" href="#fieldrules-class" aria-hidden="true">#</a> FieldRules <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">FieldRules</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> rulesData: </span><span style="color:#F69D50;">FieldRulesData</span><span style="color:#ADBAC7;">) : </span><span style="color:#F69D50;">BaseRules</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Field</code> 查找条件实现类。</p></blockquote><h2 id="name-field" tabindex="-1"><a class="header-anchor" href="#name-field" aria-hidden="true">#</a> name <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Field</code> 名称。</p></blockquote><h2 id="type-field" tabindex="-1"><a class="header-anchor" href="#type-field" aria-hidden="true">#</a> type <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> type: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Field</code> 类型。</p></blockquote><p>可不填写类型。</p><h2 id="modifiers-method" tabindex="-1"><a class="header-anchor" href="#modifiers-method" aria-hidden="true">#</a> modifiers <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">modifiers</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ModifierConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Field</code> 标识符筛选条件。</p></blockquote><p>可不设置筛选条件。</p><h2 id="name-method" tabindex="-1"><a class="header-anchor" href="#name-method" aria-hidden="true">#</a> name <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">name</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">NameConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Field</code> 名称条件。</p></blockquote><h2 id="type-method" tabindex="-1"><a class="header-anchor" href="#type-method" aria-hidden="true">#</a> type <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">type</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ObjectConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.5</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Field</code> 类型条件。</p></blockquote><p>可不填写类型。</p>`,41),l=[t];function c(d,p){return e(),a("div",null,l)}const i=s(n,[["render",c],["__file","FieldRules.html.vue"]]);export{i as default};

View File

@@ -0,0 +1,4 @@
import{_ as s,o as e,c as a,a as n}from"./app-BpUB8-Q8.js";const o={},t=n(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="genericclass-class" tabindex="-1"><a class="header-anchor" href="#genericclass-class" aria-hidden="true">#</a> GenericClass <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">GenericClass</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> type: </span><span style="color:#F69D50;">ParameterizedType</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>当前 <code>Class</code> 的泛型父类操作对象。</p></blockquote><h2 id="argument-method" tabindex="-1"><a class="header-anchor" href="#argument-method" aria-hidden="true">#</a> argument <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">argument</span><span style="color:#ADBAC7;">(index: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;?</span></span>
<span class="line"></span></code></pre></div><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">argument</span><span style="color:#ADBAC7;">(index: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt;?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><code>v1.1.5</code> <code>modified</code></p><p>新增泛型返回值 <code>Class&lt;T&gt;</code> 方法</p><p><code>v1.2.0</code> <code>modified</code></p><p>方法的返回值可为 <code>null</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得泛型参数数组下标的 <code>Class</code> 实例。</p></blockquote><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>在运行时局部变量的泛型会被擦除,获取不到时将会返回 <strong>null</strong>。</p></div>`,20),l=[t];function c(p,r){return e(),a("div",null,l)}const i=s(o,[["render",c],["__file","GenericClass.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-0183e3fc","path":"/en/api/public/com/highcapable/yukihookapi/hook/bean/GenericClass.html","title":"GenericClass - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"argument - method","slug":"argument-method","link":"#argument-method","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":4}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/bean/GenericClass.md"}');export{e as data};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-69c1c226","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/bean/GenericClass.html","title":"GenericClass - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"argument - method","slug":"argument-method","link":"#argument-method","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":4}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/bean/GenericClass.md"}');export{e as data};

View File

@@ -0,0 +1,4 @@
import{_ as s,o as a,c as e,a as n}from"./app-BpUB8-Q8.js";const o={},l=n(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="genericclass-class" tabindex="-1"><a class="header-anchor" href="#genericclass-class" aria-hidden="true">#</a> GenericClass <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">GenericClass</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> type: </span><span style="color:#F69D50;">ParameterizedType</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>当前 <code>Class</code> 的泛型父类操作对象。</p></blockquote><h2 id="argument-method" tabindex="-1"><a class="header-anchor" href="#argument-method" aria-hidden="true">#</a> argument <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">argument</span><span style="color:#ADBAC7;">(index: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;?</span></span>
<span class="line"></span></code></pre></div><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">argument</span><span style="color:#ADBAC7;">(index: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt;?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><code>v1.1.5</code> <code>修改</code></p><p>新增泛型返回值 <code>Class&lt;T&gt;</code> 方法</p><p><code>v1.2.0</code> <code>修改</code></p><p>方法的返回值可为 <code>null</code></p><p><strong>功能描述</strong></p><blockquote><p>获得泛型参数数组下标的 <code>Class</code> 实例。</p></blockquote><div class="custom-container warning"><p class="custom-container-title">注意</p><p>在运行时局部变量的泛型会被擦除,获取不到时将会返回 <strong>null</strong>。</p></div>`,19),c=[l];function p(t,r){return a(),e("div",null,c)}const i=s(o,[["render",p],["__file","GenericClass.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
import{_ as a,r as c,o as n,c as r,b as o,d as e,e as s,a as i}from"./app-BpUB8-Q8.js";const p={},d=i('<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="graphicstypefactory-kt" tabindex="-1"><a class="header-anchor" href="#graphicstypefactory-kt" aria-hidden="true">#</a> GraphicsTypeFactory <span class="symbol">- kt</span></h1><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>这是一个预置反射类型的常量类,主要为 <code>Android</code> 相关 <code>Graphics</code> 的 <code>Class</code> 内容,跟随版本更新会逐一进行增加。</p></blockquote>',7),l={href:"https://github.com/HighCapable/YukiHookAPI/blob/master/yukihookapi-core/src/main/java/com/highcapable/yukihookapi/hook/type/android/GraphicsTypeFactory.kt",target:"_blank",rel:"noopener noreferrer"};function h(u,m){const t=c("ExternalLinkIcon");return n(),r("div",null,[d,o("p",null,[e("详情可 "),o("a",l,[e("点击这里"),s(t)]),e(" 进行查看。")])])}const k=a(p,[["render",h],["__file","GraphicsTypeFactory.html.vue"]]);export{k as default};

View File

@@ -0,0 +1 @@
const a=JSON.parse('{"key":"v-7b0abf86","path":"/en/api/public/com/highcapable/yukihookapi/hook/type/android/GraphicsTypeFactory.html","title":"GraphicsTypeFactory - kt","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":6}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/type/android/GraphicsTypeFactory.md"}');export{a as data};

View File

@@ -0,0 +1 @@
const a=JSON.parse('{"key":"v-4ea62475","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/type/android/GraphicsTypeFactory.html","title":"GraphicsTypeFactory - kt","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":6}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/type/android/GraphicsTypeFactory.md"}');export{a as data};

View File

@@ -0,0 +1 @@
import{_ as a,r as t,o as r,c as s,b as o,d as e,e as n,a as p}from"./app-BpUB8-Q8.js";const i={},d=p('<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="graphicstypefactory-kt" tabindex="-1"><a class="header-anchor" href="#graphicstypefactory-kt" aria-hidden="true">#</a> GraphicsTypeFactory <span class="symbol">- kt</span></h1><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>这是一个预置反射类型的常量类,主要为 <code>Android</code> 相关 <code>Graphics</code> 的 <code>Class</code> 内容,跟随版本更新会逐一进行增加。</p></blockquote>',6),l={href:"https://github.com/HighCapable/YukiHookAPI/blob/master/yukihookapi-core/src/main/java/com/highcapable/yukihookapi/hook/type/android/GraphicsTypeFactory.kt",target:"_blank",rel:"noopener noreferrer"};function h(k,_){const c=t("ExternalLinkIcon");return r(),s("div",null,[d,o("p",null,[e("详情可 "),o("a",l,[e("点击这里"),n(c)]),e(" 进行查看。")])])}const y=a(i,[["render",h],["__file","GraphicsTypeFactory.html.vue"]]);export{y as default};

View File

@@ -0,0 +1,2 @@
import{_ as s,o,c as a,a as e}from"./app-BpUB8-Q8.js";const n={},t=e(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="hookclass-class" tabindex="-1"><a class="header-anchor" href="#hookclass-class" aria-hidden="true">#</a> HookClass <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">HookClass</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> instance: </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;?, </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">, </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> throwable: </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">?)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.1.0</code> <code>modified</code></p><p><code>HookClass</code> 相关功能不再对外开放</p><p><strong>Function Illustrate</strong></p><blockquote><p>创建一个当前 Hook 的 <code>Class</code> 接管类。</p></blockquote><p><code>instance</code> 为实例,<code>name</code> 为实例完整包名,<code>throwable</code> 为找不到实例的时候抛出的异常。</p>`,11),l=[t];function c(p,r){return o(),a("div",null,l)}const d=s(n,[["render",c],["__file","HookClass.html.vue"]]);export{d as default};

View File

@@ -0,0 +1,2 @@
import{_ as s,o,c as a,a as n}from"./app-BpUB8-Q8.js";const e={},l=n(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="hookclass-class" tabindex="-1"><a class="header-anchor" href="#hookclass-class" aria-hidden="true">#</a> HookClass <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">HookClass</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> instance: </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;?, </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">, </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> throwable: </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">?)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.1.0</code> <code>修改</code></p><p><code>HookClass</code> 相关功能不再对外开放</p><p><strong>功能描述</strong></p><blockquote><p>创建一个当前 Hook 的 <code>Class</code> 接管类。</p></blockquote><p><code>instance</code> 为实例,<code>name</code> 为实例完整包名,<code>throwable</code> 为找不到实例的时候抛出的异常。</p>`,10),c=[l];function p(t,r){return o(),a("div",null,c)}const i=s(e,[["render",p],["__file","HookClass.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const a=JSON.parse('{"key":"v-57506200","path":"/en/api/public/com/highcapable/yukihookapi/hook/bean/HookClass.html","title":"HookClass - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":2}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/bean/HookClass.md"}');export{a as data};

View File

@@ -0,0 +1 @@
const a=JSON.parse('{"key":"v-735374af","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/bean/HookClass.html","title":"HookClass - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":2}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/bean/HookClass.md"}');export{a as data};

View File

@@ -0,0 +1,88 @@
import{_ as s,o as a,c as o,a as e}from"./app-BpUB8-Q8.js";const n={},l=e(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="hookparam-class" tabindex="-1"><a class="header-anchor" href="#hookparam-class" aria-hidden="true">#</a> HookParam <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">HookParam</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> creatorInstance: </span><span style="color:#F69D50;">YukiMemberHookCreator</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> paramId: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> param: </span><span style="color:#F69D50;">YukiHookCallback</span><span style="color:#ADBAC7;">.Param?</span></span>
<span class="line"><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.1.0</code> <code>修改</code></p><p>移动 <code>HookParamWrapper</code> 到 <code>YukiHookCallback.Param</code></p><p>修正拼写错误的 <strong>creater</strong> 命名到 <strong>creator</strong></p><p><code>v1.1.5</code> <code>修改</code></p><p>新增 <code>paramId</code> 参数</p><p><code>v1.2.0</code> <code>修改</code></p><p>不再开放构造方法</p><p><strong>功能描述</strong></p><blockquote><p>Hook 方法、构造方法的目标对象实现类。</p></blockquote><h2 id="args-field" tabindex="-1"><a class="header-anchor" href="#args-field" aria-hidden="true">#</a> args <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Array</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p>在 <code>v1.0</code> 添加</p><p><strong>功能描述</strong></p><blockquote><p>获取当前 Hook 对象 <code>member</code> 或 <code>constructor</code> 的参数对象数组。</p></blockquote><p>这里的数组每项类型默认为 <code>Any</code>,你可以使用 <code>args</code> 方法来实现 <code>ArgsModifyer.cast</code> 功能。</p><h2 class="deprecated">firstArgs - field</h2><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.75</code> <code>移除</code></p><p>请使用 <code>args(index = 0)</code> 或 <code>args().first()</code></p><h2 class="deprecated">lastArgs - field</h2><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.75</code> <code>移除</code></p><p>请使用 <code>args().last()</code></p><h2 id="instance-field" tabindex="-1"><a class="header-anchor" href="#instance-field" aria-hidden="true">#</a> instance <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> instance: </span><span style="color:#F69D50;">Any</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>获取当前 Hook 实例的对象。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>如果你当前 Hook 的对象是一个静态,那么它将不存在实例的对象。</p></div><p>如果你不确定当前实例的对象是否为 <code>null</code>,你可以使用 <code>instanceOrNull</code>。</p><h2 id="instanceornull-field" tabindex="-1"><a class="header-anchor" href="#instanceornull-field" aria-hidden="true">#</a> instanceOrNull <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> instanceOrNull: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.8</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获取当前 Hook 实例的对象。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>如果你当前 Hook 的对象是一个静态,那么它将不存在实例的对象。</p></div><h2 id="instanceclass-field" tabindex="-1"><a class="header-anchor" href="#instanceclass-field" aria-hidden="true">#</a> instanceClass <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> instanceClass: </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.2.0</code> <code>修改</code></p><p>加入可空类型 (空安全)</p><p><strong>功能描述</strong></p><blockquote><p>获取当前 Hook 实例的类对象。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>如果你当前 Hook 的对象是一个静态,那么它将不存在实例的对象。</p></div><h2 id="member-field" tabindex="-1"><a class="header-anchor" href="#member-field" aria-hidden="true">#</a> member <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> member: </span><span style="color:#F69D50;">Member</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获取当前 Hook 对象的 <code>Member</code>。</p></blockquote><p>在不确定 <code>Member</code> 类型为 <code>Method</code> 或 <code>Constructor</code> 时可以使用此方法。</p><h2 id="method-field" tabindex="-1"><a class="header-anchor" href="#method-field" aria-hidden="true">#</a> method <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> method: </span><span style="color:#F69D50;">Method</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>获取当前 Hook 对象的方法。</p></blockquote><h2 id="constructor-field" tabindex="-1"><a class="header-anchor" href="#constructor-field" aria-hidden="true">#</a> constructor <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> constructor: </span><span style="color:#F69D50;">Constructor</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>获取当前 Hook 对象的构造方法。</p></blockquote><h2 id="result-field" tabindex="-1"><a class="header-anchor" href="#result-field" aria-hidden="true">#</a> result <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> result: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>获取、设置当前 Hook 对象的 <code>method</code> 或 <code>constructor</code> 的返回值。</p></blockquote><h2 id="dataextra-field" tabindex="-1"><a class="header-anchor" href="#dataextra-field" aria-hidden="true">#</a> dataExtra <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> dataExtra: </span><span style="color:#F69D50;">Bundle</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.5</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获取当前回调方法体范围内的数据存储实例。</p></blockquote><h2 id="hasthrowable-field" tabindex="-1"><a class="header-anchor" href="#hasthrowable-field" aria-hidden="true">#</a> hasThrowable <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> hasThrowable: </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>判断是否存在设置过的方法调用抛出异常。</p></blockquote><h2 id="throwable-field" tabindex="-1"><a class="header-anchor" href="#throwable-field" aria-hidden="true">#</a> throwable <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> throwable: </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获取设置的方法调用抛出异常。</p></blockquote><h2 id="throwable-throwtoapp-i-ext-method" tabindex="-1"><a class="header-anchor" href="#throwable-throwtoapp-i-ext-method" aria-hidden="true">#</a> Throwable.throwToApp <span class="symbol">- i-ext-method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">.</span><span style="color:#DCBDFB;">throwToApp</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>向 Hook APP 抛出异常。</p></blockquote><p>使用 <code>hasThrowable</code> 判断当前是否存在被抛出的异常。</p><p>使用 <code>throwable</code> 获取当前设置的方法调用抛出异常。</p><p>仅会在回调方法的 <code>MemberHookCreator.before</code> 或 <code>MemberHookCreator.after</code> 中生效。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>设置后会同时执行 <strong>resultNull</strong> 方法并将异常抛出给当前 Hook APP。</p></div><p><strong>功能示例</strong></p><p>Hook 过程中的异常仅会作用于 (Xposed) 宿主环境,目标 Hook APP 不会受到影响。</p><p>若想将异常抛给 Hook APP可以直接使用如下方法。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">hook</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">before</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">RuntimeException</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;Test Exception&quot;</span><span style="color:#ADBAC7;">).</span><span style="color:#DCBDFB;">throwToApp</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>向 Hook APP 抛出异常<u><strong>会对其暴露被 Hook 的事实</strong></u>,是不安全的,容易被检测,请按实际场景合理使用。</p></div><h2 id="result-method" tabindex="-1"><a class="header-anchor" href="#result-method" aria-hidden="true">#</a> result <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.75</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获取当前 Hook 对象的 <code>method</code> 或 <code>constructor</code> 的返回值 <code>T</code>。</p></blockquote><h2 class="deprecated">firstArg - method</h2><p><strong>变更记录</strong></p><p><code>v1.0.66</code> <code>新增</code></p><p><code>v1.0.75</code> <code>移除</code></p><h2 class="deprecated">lastArgs - method</h2><p><strong>变更记录</strong></p><p><code>v1.0.66</code> <code>新增</code></p><p><code>v1.0.75</code> <code>移除</code></p><h2 id="instance-method" tabindex="-1"><a class="header-anchor" href="#instance-method" aria-hidden="true">#</a> instance <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">instance</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">T</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>获取当前 Hook 实例的对象 <code>T</code>。</p></blockquote><p><strong>功能示例</strong></p><p>你可以通过 <code>instance</code> 方法轻松使用泛型 <code>cast</code> 为目标对象的类型。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">instance</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Activity</span><span style="color:#ADBAC7;">&gt;().</span><span style="color:#DCBDFB;">finish</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><h2 id="instanceornull-method" tabindex="-1"><a class="header-anchor" href="#instanceornull-method" aria-hidden="true">#</a> instanceOrNull <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">instanceOrNull</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.8</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获取当前 Hook 实例的对象 <code>T</code>。</p></blockquote><p><strong>功能示例</strong></p><p>用法请参考 <a href="#instance-method">instance</a> 方法。</p><h2 id="args-method" tabindex="-1"><a class="header-anchor" href="#args-method" aria-hidden="true">#</a> args <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">args</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">ArgsIndexCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.75</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获取当前 Hook 对象的 <code>method</code> 或 <code>constructor</code> 的参数数组下标实例化类。</p></blockquote><h2 id="args-method-1" tabindex="-1"><a class="header-anchor" href="#args-method-1" aria-hidden="true">#</a> args <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">args</span><span style="color:#ADBAC7;">(index: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">ArgsModifyer</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.75</code> <code>修改</code></p><p>默认值 <code>index = 0</code> 移动到新的使用方法 <code>args().first()</code></p><p><strong>功能描述</strong></p><blockquote><p>获取当前 Hook 对象的 <code>method</code> 或 <code>constructor</code> 的参数实例化对象类。</p></blockquote><p><strong>功能示例</strong></p><p>你可以通过 <code>args</code> 方法修改当前 Hook 实例的方法、构造方法的参数内容。</p><p>你可以直接使用 <code>set</code> 方法设置 <code>param</code> 为你的目标实例,接受 <code>Any</code> 类型。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>请确保 <strong>param</strong> 类型为你的目标实例类型。</p></div><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">args</span><span style="color:#ADBAC7;">(index </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">0</span><span style="color:#ADBAC7;">).</span><span style="color:#DCBDFB;">set</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;modify the value&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>你可以这样直接设置第一位 <code>param</code> 的值。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">args</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">first</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">set</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;modify the value&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>你还可以直接设置最后一位 <code>param</code> 的值。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">args</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">last</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">set</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;modify the value&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>你还可以使用 <code>setNull</code> 方法设置 <code>param</code> 为空。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">args</span><span style="color:#ADBAC7;">(index </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">1</span><span style="color:#ADBAC7;">).</span><span style="color:#DCBDFB;">setNull</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>你还可以使用 <code>setTrue</code> 方法设置 <code>param</code> 为 <code>true</code>。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>请确保 <strong>param</strong> 类型为 <strong>Boolean</strong>。</p></div><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">args</span><span style="color:#ADBAC7;">(index </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">1</span><span style="color:#ADBAC7;">).</span><span style="color:#DCBDFB;">setTrue</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>你还可以使用 <code>setFalse</code> 方法设置 <code>param</code> 为 <code>false</code>。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>请确保 <strong>param</strong> 类型为 <strong>Boolean</strong>。</p></div><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">args</span><span style="color:#ADBAC7;">(index </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">1</span><span style="color:#ADBAC7;">).</span><span style="color:#DCBDFB;">setFalse</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><h2 id="calloriginal-method" tabindex="-1"><a class="header-anchor" href="#calloriginal-method" aria-hidden="true">#</a> callOriginal <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">callOriginal</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">callOriginal</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>执行原始 <code>Member</code>。</p></blockquote><p>调用自身未进行 Hook 的原始 <code>Member</code> 并调用原始参数执行。</p><p><strong>功能实例</strong></p><p>此方法可以 <code>invoke</code> 原始未经 Hook 的 <code>Member</code> 对象,取决于原始 <code>Member</code> 的参数。</p><p>调用自身原始的方法不会再经过当前 <code>before</code>、<code>after</code> 以及 <code>replaceUnit</code>、<code>replaceAny</code>。</p><p>比如我们 Hook 的这个方法被这样调用 <code>test(&quot;test value&quot;)</code>,使用此方法会调用其中的 <code>&quot;test value&quot;</code> 作为参数。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> name </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;test&quot;</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(StringClass)</span></span>
<span class="line"><span style="color:#ADBAC7;"> returnType </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> StringClass</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">hook</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">after</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// &lt;方案1&gt; 不使用泛型,不获取方法执行结果,调用将使用原方法传入的 args 自动传参</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">callOriginal</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// &lt;方案2&gt; 使用泛型,已知方法执行结果参数类型进行 cast</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// 假设返回值为 String失败会返回 null调用将使用原方法传入的 args 自动传参</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">callOriginal</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">&gt;()</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="invokeoriginal-method" tabindex="-1"><a class="header-anchor" href="#invokeoriginal-method" aria-hidden="true">#</a> invokeOriginal <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">invokeOriginal</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">invokeOriginal</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.1.0</code> <code>修改</code></p><p>不再需要使用 <code>member.invokeOriginal</code> 进行调用</p><p><strong>功能描述</strong></p><blockquote><p>执行原始 <code>Member</code>。</p></blockquote><p>调用自身未进行 Hook 的原始 <code>Member</code> 并自定义 <code>args</code> 执行。</p><p><strong>功能实例</strong></p><p>此方法可以 <code>invoke</code> 原始未经 Hook 的 <code>Member</code> 对象,可自定义需要调用的参数内容。</p><p>调用自身原始的方法不会再经过当前 <code>before</code>、<code>after</code> 以及 <code>replaceUnit</code>、<code>replaceAny</code>。</p><p>比如我们 Hook 的这个方法被这样调用 <code>test(&quot;test value&quot;)</code>,使用此方法可自定义其中的 <code>args</code> 作为参数。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> name </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;test&quot;</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(StringClass)</span></span>
<span class="line"><span style="color:#ADBAC7;"> returnType </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> StringClass</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">hook</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">after</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// &lt;方案1&gt; 不使用泛型,不获取方法执行结果</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">invokeOriginal</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;test value&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// &lt;方案2&gt; 使用泛型,已知方法执行结果参数类型进行 cast假设返回值为 String失败会返回 null</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">invokeOriginal</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">&gt;(</span><span style="color:#96D0FF;">&quot;test value&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="resulttrue-method" tabindex="-1"><a class="header-anchor" href="#resulttrue-method" aria-hidden="true">#</a> resultTrue <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">resultTrue</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>设置当前 Hook 对象方法的 <code>result</code> 返回值为 <code>true</code>。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>请确保 <strong>result</strong> 类型为 <strong>Boolean</strong>。</p></div><h2 id="resultfalse-method" tabindex="-1"><a class="header-anchor" href="#resultfalse-method" aria-hidden="true">#</a> resultFalse <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">resultFalse</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>设置当前 Hook 对象方法的 <code>result</code> 返回值为 <code>false</code>。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>请确保 <strong>result</strong> 类型为 <strong>Boolean</strong>。</p></div><h2 id="resultnull-method" tabindex="-1"><a class="header-anchor" href="#resultnull-method" aria-hidden="true">#</a> resultNull <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">resultNull</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><div class="custom-container warning"><p class="custom-container-title">注意</p><p>此方法将强制设置 Hook 对象方法的 <strong>result</strong> 为 <strong>null</strong>。</p></div><h2 id="argsindexcondition-class" tabindex="-1"><a class="header-anchor" href="#argsindexcondition-class" aria-hidden="true">#</a> ArgsIndexCondition <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">ArgsIndexCondition</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.75</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>对方法参数的数组下标进行实例化类。</p></blockquote><h3 id="first-method" tabindex="-1"><a class="header-anchor" href="#first-method" aria-hidden="true">#</a> first <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">first</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">ArgsModifyer</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.75</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获取当前 Hook 对象的 <code>method</code> 或 <code>constructor</code> 的参数数组第一位。</p></blockquote><h3 id="last-method" tabindex="-1"><a class="header-anchor" href="#last-method" aria-hidden="true">#</a> last <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">last</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">ArgsModifyer</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.75</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获取当前 Hook 对象的 <code>method</code> 或 <code>constructor</code> 的参数数组最后一位。</p></blockquote><h2 id="argsmodifyer-class" tabindex="-1"><a class="header-anchor" href="#argsmodifyer-class" aria-hidden="true">#</a> ArgsModifyer <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">ArgsModifyer</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> index: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>对方法参数的修改进行实例化类。</p></blockquote><h3 id="cast-method" tabindex="-1"><a class="header-anchor" href="#cast-method" aria-hidden="true">#</a> cast <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">cast</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.66</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>of</code></s> 为 <code>cast</code></p><p><strong>功能描述</strong></p><blockquote><p>得到方法参数的实例对象 <code>T</code>。</p></blockquote><h3 id="byte-method" tabindex="-1"><a class="header-anchor" href="#byte-method" aria-hidden="true">#</a> byte <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">byte</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Byte</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.68</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>得到方法参数的实例对象 Byte。</p></blockquote><h3 id="int-method" tabindex="-1"><a class="header-anchor" href="#int-method" aria-hidden="true">#</a> int <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">int</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.66</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>ofInt</code></s> 为 <code>int</code></p><p><strong>功能描述</strong></p><blockquote><p>得到方法参数的实例对象 Int。</p></blockquote><h3 id="long-method" tabindex="-1"><a class="header-anchor" href="#long-method" aria-hidden="true">#</a> long <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">long</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Long</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.66</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>ofLong</code></s> 为 <code>long</code></p><p><strong>功能描述</strong></p><blockquote><p>得到方法参数的实例对象 Long。</p></blockquote><h3 id="short-method" tabindex="-1"><a class="header-anchor" href="#short-method" aria-hidden="true">#</a> short <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">short</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Short</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.66</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>ofShort</code></s> 为 <code>short</code></p><p><strong>功能描述</strong></p><blockquote><p>得到方法参数的实例对象 Short。</p></blockquote><h3 id="double-method" tabindex="-1"><a class="header-anchor" href="#double-method" aria-hidden="true">#</a> double <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">double</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Double</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.66</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>ofDouble</code></s> 为 <code>double</code></p><p><strong>功能描述</strong></p><blockquote><p>得到方法参数的实例对象 Double。</p></blockquote><h3 id="float-method" tabindex="-1"><a class="header-anchor" href="#float-method" aria-hidden="true">#</a> float <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">float</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Float</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.66</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>ofFloat</code></s> 为 <code>float</code></p><p><strong>功能描述</strong></p><blockquote><p>得到方法参数的实例对象 Float。</p></blockquote><h3 id="string-method" tabindex="-1"><a class="header-anchor" href="#string-method" aria-hidden="true">#</a> string <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">string</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.66</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>ofString</code></s> 为 <code>string</code></p><p><strong>功能描述</strong></p><blockquote><p>得到方法参数的实例对象 String。</p></blockquote><h3 id="char-method" tabindex="-1"><a class="header-anchor" href="#char-method" aria-hidden="true">#</a> char <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">char</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Char</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.68</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>得到方法参数的实例对象 Char。</p></blockquote><h3 id="boolean-method" tabindex="-1"><a class="header-anchor" href="#boolean-method" aria-hidden="true">#</a> boolean <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">boolean</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.66</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>ofBoolean</code></s> 为 <code>boolean</code></p><p><strong>功能描述</strong></p><blockquote><p>得到方法参数的实例对象 Boolean。</p></blockquote><h3 id="any-method" tabindex="-1"><a class="header-anchor" href="#any-method" aria-hidden="true">#</a> any <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">any</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.77</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>得到方法参数的实例对象 Any。</p></blockquote><h3 id="array-method" tabindex="-1"><a class="header-anchor" href="#array-method" aria-hidden="true">#</a> array <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">array</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Array</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.68</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>得到方法参数的实例对象 Array。</p></blockquote><h3 id="list-method" tabindex="-1"><a class="header-anchor" href="#list-method" aria-hidden="true">#</a> list <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">list</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">List</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.68</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>得到方法参数的实例对象 List。</p></blockquote><h3 id="set-method" tabindex="-1"><a class="header-anchor" href="#set-method" aria-hidden="true">#</a> set <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">set</span><span style="color:#ADBAC7;">(any: </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>设置方法参数的实例对象。</p></blockquote><h3 id="setnull-method" tabindex="-1"><a class="header-anchor" href="#setnull-method" aria-hidden="true">#</a> setNull <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">setNull</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>设置方法参数的实例对象为 <code>null</code>。</p></blockquote><h3 id="settrue-method" tabindex="-1"><a class="header-anchor" href="#settrue-method" aria-hidden="true">#</a> setTrue <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">setTrue</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>设置方法参数的实例对象为 <code>true</code>。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>请确保目标对象的类型是 <strong>Boolean</strong>。</p></div><h3 id="setfalse-method" tabindex="-1"><a class="header-anchor" href="#setfalse-method" aria-hidden="true">#</a> setFalse <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">setFalse</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>设置方法参数的实例对象为 <code>false</code>。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>请确保目标对象的类型是 <strong>Boolean</strong>。</p></div>`,377),p=[l];function c(t,r){return a(),o("div",null,p)}const i=s(n,[["render",c],["__file","HookParam.html.vue"]]);export{i as default};

View File

@@ -0,0 +1,88 @@
import{_ as s,o as a,c as e,a as o}from"./app-BpUB8-Q8.js";const n={},l=o(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="hookparam-class" tabindex="-1"><a class="header-anchor" href="#hookparam-class" aria-hidden="true">#</a> HookParam <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">HookParam</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> creatorInstance: </span><span style="color:#F69D50;">YukiMemberHookCreator</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> paramId: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> param: </span><span style="color:#F69D50;">YukiHookCallback</span><span style="color:#ADBAC7;">.Param?</span></span>
<span class="line"><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.1.0</code> <code>modified</code></p><p>移动 <code>HookParamWrapper</code> 到 <code>YukiHookCallback.Param</code></p><p>修正拼写错误的 <strong>creater</strong> 命名到 <strong>creator</strong></p><p><code>v1.1.5</code> <code>modified</code></p><p>新增 <code>paramId</code> 参数</p><p><code>v1.2.0</code> <code>modified</code></p><p>不再开放构造方法</p><p><strong>Function Illustrate</strong></p><blockquote><p>Hook 方法、构造方法的目标对象实现类。</p></blockquote><h2 id="args-field" tabindex="-1"><a class="header-anchor" href="#args-field" aria-hidden="true">#</a> args <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Array</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p>在 <code>v1.0</code> 添加</p><p><strong>Function Illustrate</strong></p><blockquote><p>获取当前 Hook 对象 <code>member</code> 或 <code>constructor</code> 的参数对象数组。</p></blockquote><p>这里的数组每项类型默认为 <code>Any</code>,你可以使用 <code>args</code> 方法来实现 <code>ArgsModifyer.cast</code> 功能。</p><h2 class="deprecated">firstArgs - field</h2><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.75</code> <code>removed</code></p><p>请使用 <code>args(index = 0)</code> 或 <code>args().first()</code></p><h2 class="deprecated">lastArgs - field</h2><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.75</code> <code>removed</code></p><p>请使用 <code>args().last()</code></p><h2 id="instance-field" tabindex="-1"><a class="header-anchor" href="#instance-field" aria-hidden="true">#</a> instance <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> instance: </span><span style="color:#F69D50;">Any</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获取当前 Hook 实例的对象。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>如果你当前 Hook 的对象是一个静态,那么它将不存在实例的对象。</p></div><p>如果你不确定当前实例的对象是否为 <code>null</code>,你可以使用 <code>instanceOrNull</code>。</p><h2 id="instanceornull-field" tabindex="-1"><a class="header-anchor" href="#instanceornull-field" aria-hidden="true">#</a> instanceOrNull <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> instanceOrNull: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.8</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获取当前 Hook 实例的对象。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>如果你当前 Hook 的对象是一个静态,那么它将不存在实例的对象。</p></div><h2 id="instanceclass-field" tabindex="-1"><a class="header-anchor" href="#instanceclass-field" aria-hidden="true">#</a> instanceClass <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> instanceClass: </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.2.0</code> <code>modified</code></p><p>加入可空类型 (空安全)</p><p><strong>Function Illustrate</strong></p><blockquote><p>获取当前 Hook 实例的类对象。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>如果你当前 Hook 的对象是一个静态,那么它将不存在实例的对象。</p></div><h2 id="member-field" tabindex="-1"><a class="header-anchor" href="#member-field" aria-hidden="true">#</a> member <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> member: </span><span style="color:#F69D50;">Member</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获取当前 Hook 对象的 <code>Member</code>。</p></blockquote><p>在不确定 <code>Member</code> 类型为 <code>Method</code> 或 <code>Constructor</code> 时可以使用此方法。</p><h2 id="method-field" tabindex="-1"><a class="header-anchor" href="#method-field" aria-hidden="true">#</a> method <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> method: </span><span style="color:#F69D50;">Method</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获取当前 Hook 对象的方法。</p></blockquote><h2 id="constructor-field" tabindex="-1"><a class="header-anchor" href="#constructor-field" aria-hidden="true">#</a> constructor <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> constructor: </span><span style="color:#F69D50;">Constructor</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获取当前 Hook 对象的构造方法。</p></blockquote><h2 id="result-field" tabindex="-1"><a class="header-anchor" href="#result-field" aria-hidden="true">#</a> result <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> result: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获取、设置当前 Hook 对象的 <code>method</code> 或 <code>constructor</code> 的返回值。</p></blockquote><h2 id="dataextra-field" tabindex="-1"><a class="header-anchor" href="#dataextra-field" aria-hidden="true">#</a> dataExtra <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> dataExtra: </span><span style="color:#F69D50;">Bundle</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.5</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获取当前回调方法体范围内的数据存储实例。</p></blockquote><h2 id="hasthrowable-field" tabindex="-1"><a class="header-anchor" href="#hasthrowable-field" aria-hidden="true">#</a> hasThrowable <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> hasThrowable: </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>判断是否存在设置过的方法调用抛出异常。</p></blockquote><h2 id="throwable-field" tabindex="-1"><a class="header-anchor" href="#throwable-field" aria-hidden="true">#</a> throwable <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> throwable: </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获取设置的方法调用抛出异常。</p></blockquote><h2 id="throwable-throwtoapp-i-ext-method" tabindex="-1"><a class="header-anchor" href="#throwable-throwtoapp-i-ext-method" aria-hidden="true">#</a> Throwable.throwToApp <span class="symbol">- i-ext-method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">.</span><span style="color:#DCBDFB;">throwToApp</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>向 Hook APP 抛出异常。</p></blockquote><p>使用 <code>hasThrowable</code> 判断当前是否存在被抛出的异常。</p><p>使用 <code>throwable</code> 获取当前设置的方法调用抛出异常。</p><p>仅会在回调方法的 <code>MemberHookCreator.before</code> 或 <code>MemberHookCreator.after</code> 中生效。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>设置后会同时执行 <strong>resultNull</strong> 方法并将异常抛出给当前 Hook APP。</p></div><p><strong>Function Example</strong></p><p>Hook 过程中的异常仅会作用于 (Xposed) 宿主环境,目标 Hook APP 不会受到影响。</p><p>若想将异常抛给 Hook APP可以直接使用如下方法。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">hook</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">before</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">RuntimeException</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;Test Exception&quot;</span><span style="color:#ADBAC7;">).</span><span style="color:#DCBDFB;">throwToApp</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>向 Hook APP 抛出异常<u><strong>会对其暴露被 Hook 的事实</strong></u>,是不安全的,容易被检测,请按实际场景合理使用。</p></div><h2 id="result-method" tabindex="-1"><a class="header-anchor" href="#result-method" aria-hidden="true">#</a> result <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.75</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获取当前 Hook 对象的 <code>method</code> 或 <code>constructor</code> 的返回值 <code>T</code>。</p></blockquote><h2 class="deprecated">firstArg - method</h2><p><strong>Change Records</strong></p><p><code>v1.0.66</code> <code>added</code></p><p><code>v1.0.75</code> <code>removed</code></p><h2 class="deprecated">lastArgs - method</h2><p><strong>Change Records</strong></p><p><code>v1.0.66</code> <code>added</code></p><p><code>v1.0.75</code> <code>removed</code></p><h2 id="instance-method" tabindex="-1"><a class="header-anchor" href="#instance-method" aria-hidden="true">#</a> instance <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">instance</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">T</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获取当前 Hook 实例的对象 <code>T</code>。</p></blockquote><p><strong>Function Example</strong></p><p>你可以通过 <code>instance</code> 方法轻松使用泛型 <code>cast</code> 为目标对象的类型。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">instance</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Activity</span><span style="color:#ADBAC7;">&gt;().</span><span style="color:#DCBDFB;">finish</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><h2 id="instanceornull-method" tabindex="-1"><a class="header-anchor" href="#instanceornull-method" aria-hidden="true">#</a> instanceOrNull <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">instanceOrNull</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Function Illustrate</strong></p><p><code>v1.1.8</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获取当前 Hook 实例的对象 <code>T</code>。</p></blockquote><p><strong>Function Example</strong></p><p>用法请参考 <a href="#instance-method">instance</a> 方法。</p><h2 id="args-method" tabindex="-1"><a class="header-anchor" href="#args-method" aria-hidden="true">#</a> args <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">args</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">ArgsIndexCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.75</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获取当前 Hook 对象的 <code>method</code> 或 <code>constructor</code> 的参数数组下标实例化类。</p></blockquote><h2 id="args-method-1" tabindex="-1"><a class="header-anchor" href="#args-method-1" aria-hidden="true">#</a> args <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">args</span><span style="color:#ADBAC7;">(index: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">ArgsModifyer</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.75</code> <code>modified</code></p><p>默认值 <code>index = 0</code> 移动到新的使用方法 <code>args().first()</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获取当前 Hook 对象的 <code>method</code> 或 <code>constructor</code> 的参数实例化对象类。</p></blockquote><p><strong>Function Example</strong></p><p>你可以通过 <code>args</code> 方法修改当前 Hook 实例的方法、构造方法的参数内容。</p><p>你可以直接使用 <code>set</code> 方法设置 <code>param</code> 为你的目标实例,接受 <code>Any</code> 类型。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>请确保 <strong>param</strong> 类型为你的目标实例类型。</p></div><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">args</span><span style="color:#ADBAC7;">(index </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">0</span><span style="color:#ADBAC7;">).</span><span style="color:#DCBDFB;">set</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;modify the value&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>你可以这样直接设置第一位 <code>param</code> 的值。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">args</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">first</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">set</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;modify the value&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>你还可以直接设置最后一位 <code>param</code> 的值。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">args</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">last</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">set</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;modify the value&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>你还可以使用 <code>setNull</code> 方法设置 <code>param</code> 为空。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">args</span><span style="color:#ADBAC7;">(index </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">1</span><span style="color:#ADBAC7;">).</span><span style="color:#DCBDFB;">setNull</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>你还可以使用 <code>setTrue</code> 方法设置 <code>param</code> 为 <code>true</code>。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>请确保 <strong>param</strong> 类型为 <strong>Boolean</strong>。</p></div><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">args</span><span style="color:#ADBAC7;">(index </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">1</span><span style="color:#ADBAC7;">).</span><span style="color:#DCBDFB;">setTrue</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>你还可以使用 <code>setFalse</code> 方法设置 <code>param</code> 为 <code>false</code>。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>请确保 <strong>param</strong> 类型为 <strong>Boolean</strong>。</p></div><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">args</span><span style="color:#ADBAC7;">(index </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">1</span><span style="color:#ADBAC7;">).</span><span style="color:#DCBDFB;">setFalse</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><h2 id="calloriginal-method" tabindex="-1"><a class="header-anchor" href="#calloriginal-method" aria-hidden="true">#</a> callOriginal <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">callOriginal</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">callOriginal</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>执行原始 <code>Member</code>。</p></blockquote><p>调用自身未进行 Hook 的原始 <code>Member</code> 并调用原始参数执行。</p><p><strong>功能实例</strong></p><p>此方法可以 <code>invoke</code> 原始未经 Hook 的 <code>Member</code> 对象,取决于原始 <code>Member</code> 的参数。</p><p>调用自身原始的方法不会再经过当前 <code>before</code>、<code>after</code> 以及 <code>replaceUnit</code>、<code>replaceAny</code>。</p><p>比如我们 Hook 的这个方法被这样调用 <code>test(&quot;test value&quot;)</code>,使用此方法会调用其中的 <code>&quot;test value&quot;</code> 作为参数。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> name </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;test&quot;</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(StringClass)</span></span>
<span class="line"><span style="color:#ADBAC7;"> returnType </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> StringClass</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">hook</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">after</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// &lt;方案1&gt; 不使用泛型,不获取方法执行结果,调用将使用原方法传入的 args 自动传参</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">callOriginal</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// &lt;方案2&gt; 使用泛型,已知方法执行结果参数类型进行 cast</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// 假设返回值为 String失败会返回 null调用将使用原方法传入的 args 自动传参</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">callOriginal</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">&gt;()</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="invokeoriginal-method" tabindex="-1"><a class="header-anchor" href="#invokeoriginal-method" aria-hidden="true">#</a> invokeOriginal <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">invokeOriginal</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">invokeOriginal</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.1.0</code> <code>modified</code></p><p>不再需要使用 <code>member.invokeOriginal</code> 进行调用</p><p><strong>Function Illustrate</strong></p><blockquote><p>执行原始 <code>Member</code>。</p></blockquote><p>调用自身未进行 Hook 的原始 <code>Member</code> 并自定义 <code>args</code> 执行。</p><p><strong>功能实例</strong></p><p>此方法可以 <code>invoke</code> 原始未经 Hook 的 <code>Member</code> 对象,可自定义需要调用的参数内容。</p><p>调用自身原始的方法不会再经过当前 <code>before</code>、<code>after</code> 以及 <code>replaceUnit</code>、<code>replaceAny</code>。</p><p>比如我们 Hook 的这个方法被这样调用 <code>test(&quot;test value&quot;)</code>,使用此方法可自定义其中的 <code>args</code> 作为参数。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> name </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;test&quot;</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(StringClass)</span></span>
<span class="line"><span style="color:#ADBAC7;"> returnType </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> StringClass</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">hook</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">after</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// &lt;方案1&gt; 不使用泛型,不获取方法执行结果</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">invokeOriginal</span><span style="color:#ADBAC7;">(</span><span style="color:#96D0FF;">&quot;test value&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// &lt;方案2&gt; 使用泛型,已知方法执行结果参数类型进行 cast假设返回值为 String失败会返回 null</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">invokeOriginal</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">&gt;(</span><span style="color:#96D0FF;">&quot;test value&quot;</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="resulttrue-method" tabindex="-1"><a class="header-anchor" href="#resulttrue-method" aria-hidden="true">#</a> resultTrue <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">resultTrue</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置当前 Hook 对象方法的 <code>result</code> 返回值为 <code>true</code>。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>请确保 <strong>result</strong> 类型为 <strong>Boolean</strong>。</p></div><h2 id="resultfalse-method" tabindex="-1"><a class="header-anchor" href="#resultfalse-method" aria-hidden="true">#</a> resultFalse <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">resultFalse</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置当前 Hook 对象方法的 <code>result</code> 返回值为 <code>false</code>。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>请确保 <strong>result</strong> 类型为 <strong>Boolean</strong>。</p></div><h2 id="resultnull-method" tabindex="-1"><a class="header-anchor" href="#resultnull-method" aria-hidden="true">#</a> resultNull <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">resultNull</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>此方法将强制设置 Hook 对象方法的 <strong>result</strong> 为 <strong>null</strong>。</p></div><h2 id="argsindexcondition-class" tabindex="-1"><a class="header-anchor" href="#argsindexcondition-class" aria-hidden="true">#</a> ArgsIndexCondition <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">ArgsIndexCondition</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.75</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>对方法参数的数组下标进行实例化类。</p></blockquote><h3 id="first-method" tabindex="-1"><a class="header-anchor" href="#first-method" aria-hidden="true">#</a> first <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">first</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">ArgsModifyer</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.75</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获取当前 Hook 对象的 <code>method</code> 或 <code>constructor</code> 的参数数组第一位。</p></blockquote><h3 id="last-method" tabindex="-1"><a class="header-anchor" href="#last-method" aria-hidden="true">#</a> last <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">last</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">ArgsModifyer</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.75</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获取当前 Hook 对象的 <code>method</code> 或 <code>constructor</code> 的参数数组最后一位。</p></blockquote><h2 id="argsmodifyer-class" tabindex="-1"><a class="header-anchor" href="#argsmodifyer-class" aria-hidden="true">#</a> ArgsModifyer <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">ArgsModifyer</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> index: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>对方法参数的修改进行实例化类。</p></blockquote><h3 id="cast-method" tabindex="-1"><a class="header-anchor" href="#cast-method" aria-hidden="true">#</a> cast <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">cast</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.66</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>of</code></s> 为 <code>cast</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到方法参数的实例对象 <code>T</code>。</p></blockquote><h3 id="byte-method" tabindex="-1"><a class="header-anchor" href="#byte-method" aria-hidden="true">#</a> byte <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">byte</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Byte</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.68</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到方法参数的实例对象 Byte。</p></blockquote><h3 id="int-method" tabindex="-1"><a class="header-anchor" href="#int-method" aria-hidden="true">#</a> int <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">int</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.66</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>ofInt</code></s> 为 <code>int</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到方法参数的实例对象 Int。</p></blockquote><h3 id="long-method" tabindex="-1"><a class="header-anchor" href="#long-method" aria-hidden="true">#</a> long <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">long</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Long</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.66</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>ofLong</code></s> 为 <code>long</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到方法参数的实例对象 Long。</p></blockquote><h3 id="short-method" tabindex="-1"><a class="header-anchor" href="#short-method" aria-hidden="true">#</a> short <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">short</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Short</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.66</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>ofShort</code></s> 为 <code>short</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到方法参数的实例对象 Short。</p></blockquote><h3 id="double-method" tabindex="-1"><a class="header-anchor" href="#double-method" aria-hidden="true">#</a> double <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">double</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Double</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.66</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>ofDouble</code></s> 为 <code>double</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到方法参数的实例对象 Double。</p></blockquote><h3 id="float-method" tabindex="-1"><a class="header-anchor" href="#float-method" aria-hidden="true">#</a> float <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">float</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Float</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.66</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>ofFloat</code></s> 为 <code>float</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到方法参数的实例对象 Float。</p></blockquote><h3 id="string-method" tabindex="-1"><a class="header-anchor" href="#string-method" aria-hidden="true">#</a> string <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">string</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.66</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>ofString</code></s> 为 <code>string</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到方法参数的实例对象 String。</p></blockquote><h3 id="char-method" tabindex="-1"><a class="header-anchor" href="#char-method" aria-hidden="true">#</a> char <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">char</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Char</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.68</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到方法参数的实例对象 Char。</p></blockquote><h3 id="boolean-method" tabindex="-1"><a class="header-anchor" href="#boolean-method" aria-hidden="true">#</a> boolean <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">boolean</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.66</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>ofBoolean</code></s> 为 <code>boolean</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到方法参数的实例对象 Boolean。</p></blockquote><h3 id="any-method" tabindex="-1"><a class="header-anchor" href="#any-method" aria-hidden="true">#</a> any <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">any</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.77</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到方法参数的实例对象 Any。</p></blockquote><h3 id="array-method" tabindex="-1"><a class="header-anchor" href="#array-method" aria-hidden="true">#</a> array <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">array</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Array</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.68</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到方法参数的实例对象 Array。</p></blockquote><h3 id="list-method" tabindex="-1"><a class="header-anchor" href="#list-method" aria-hidden="true">#</a> list <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">list</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">List</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.68</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到方法参数的实例对象 List。</p></blockquote><h3 id="set-method" tabindex="-1"><a class="header-anchor" href="#set-method" aria-hidden="true">#</a> set <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">set</span><span style="color:#ADBAC7;">(any: </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置方法参数的实例对象。</p></blockquote><h3 id="setnull-method" tabindex="-1"><a class="header-anchor" href="#setnull-method" aria-hidden="true">#</a> setNull <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">setNull</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置方法参数的实例对象为 <code>null</code>。</p></blockquote><h3 id="settrue-method" tabindex="-1"><a class="header-anchor" href="#settrue-method" aria-hidden="true">#</a> setTrue <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">setTrue</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置方法参数的实例对象为 <code>true</code>。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>请确保目标对象的类型是 <strong>Boolean</strong>。</p></div><h3 id="setfalse-method" tabindex="-1"><a class="header-anchor" href="#setfalse-method" aria-hidden="true">#</a> setFalse <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">setFalse</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置方法参数的实例对象为 <code>false</code>。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>请确保目标对象的类型是 <strong>Boolean</strong>。</p></div>`,378),t=[l];function p(c,r){return a(),e("div",null,t)}const i=s(n,[["render",p],["__file","HookParam.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-60cbe1b4","path":"/en/api/public/com/highcapable/yukihookapi/hook/param/HookParam.html","title":"HookParam - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"args - field","slug":"args-field","link":"#args-field","children":[]},{"level":2,"title":"instance - field","slug":"instance-field","link":"#instance-field","children":[]},{"level":2,"title":"instanceOrNull - field","slug":"instanceornull-field","link":"#instanceornull-field","children":[]},{"level":2,"title":"instanceClass - field","slug":"instanceclass-field","link":"#instanceclass-field","children":[]},{"level":2,"title":"member - field","slug":"member-field","link":"#member-field","children":[]},{"level":2,"title":"method - field","slug":"method-field","link":"#method-field","children":[]},{"level":2,"title":"constructor - field","slug":"constructor-field","link":"#constructor-field","children":[]},{"level":2,"title":"result - field","slug":"result-field","link":"#result-field","children":[]},{"level":2,"title":"dataExtra - field","slug":"dataextra-field","link":"#dataextra-field","children":[]},{"level":2,"title":"hasThrowable - field","slug":"hasthrowable-field","link":"#hasthrowable-field","children":[]},{"level":2,"title":"throwable - field","slug":"throwable-field","link":"#throwable-field","children":[]},{"level":2,"title":"Throwable.throwToApp - i-ext-method","slug":"throwable-throwtoapp-i-ext-method","link":"#throwable-throwtoapp-i-ext-method","children":[]},{"level":2,"title":"result - method","slug":"result-method","link":"#result-method","children":[]},{"level":2,"title":"instance - method","slug":"instance-method","link":"#instance-method","children":[]},{"level":2,"title":"instanceOrNull - method","slug":"instanceornull-method","link":"#instanceornull-method","children":[]},{"level":2,"title":"args - method","slug":"args-method","link":"#args-method","children":[]},{"level":2,"title":"args - method","slug":"args-method-1","link":"#args-method-1","children":[]},{"level":2,"title":"callOriginal - method","slug":"calloriginal-method","link":"#calloriginal-method","children":[]},{"level":2,"title":"invokeOriginal - method","slug":"invokeoriginal-method","link":"#invokeoriginal-method","children":[]},{"level":2,"title":"resultTrue - method","slug":"resulttrue-method","link":"#resulttrue-method","children":[]},{"level":2,"title":"resultFalse - method","slug":"resultfalse-method","link":"#resultfalse-method","children":[]},{"level":2,"title":"resultNull - method","slug":"resultnull-method","link":"#resultnull-method","children":[]},{"level":2,"title":"ArgsIndexCondition - class","slug":"argsindexcondition-class","link":"#argsindexcondition-class","children":[{"level":3,"title":"first - method","slug":"first-method","link":"#first-method","children":[]},{"level":3,"title":"last - method","slug":"last-method","link":"#last-method","children":[]}]},{"level":2,"title":"ArgsModifyer - class","slug":"argsmodifyer-class","link":"#argsmodifyer-class","children":[{"level":3,"title":"cast - method","slug":"cast-method","link":"#cast-method","children":[]},{"level":3,"title":"byte - method","slug":"byte-method","link":"#byte-method","children":[]},{"level":3,"title":"int - method","slug":"int-method","link":"#int-method","children":[]},{"level":3,"title":"long - method","slug":"long-method","link":"#long-method","children":[]},{"level":3,"title":"short - method","slug":"short-method","link":"#short-method","children":[]},{"level":3,"title":"double - method","slug":"double-method","link":"#double-method","children":[]},{"level":3,"title":"float - method","slug":"float-method","link":"#float-method","children":[]},{"level":3,"title":"string - method","slug":"string-method","link":"#string-method","children":[]},{"level":3,"title":"char - method","slug":"char-method","link":"#char-method","children":[]},{"level":3,"title":"boolean - method","slug":"boolean-method","link":"#boolean-method","children":[]},{"level":3,"title":"any - method","slug":"any-method","link":"#any-method","children":[]},{"level":3,"title":"array - method","slug":"array-method","link":"#array-method","children":[]},{"level":3,"title":"list - method","slug":"list-method","link":"#list-method","children":[]},{"level":3,"title":"set - method","slug":"set-method","link":"#set-method","children":[]},{"level":3,"title":"setNull - method","slug":"setnull-method","link":"#setnull-method","children":[]},{"level":3,"title":"setTrue - method","slug":"settrue-method","link":"#settrue-method","children":[]},{"level":3,"title":"setFalse - method","slug":"setfalse-method","link":"#setfalse-method","children":[]}]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":9}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/param/HookParam.md"}');export{e as data};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-75a9b636","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/param/HookParam.html","title":"HookParam - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"args - field","slug":"args-field","link":"#args-field","children":[]},{"level":2,"title":"instance - field","slug":"instance-field","link":"#instance-field","children":[]},{"level":2,"title":"instanceOrNull - field","slug":"instanceornull-field","link":"#instanceornull-field","children":[]},{"level":2,"title":"instanceClass - field","slug":"instanceclass-field","link":"#instanceclass-field","children":[]},{"level":2,"title":"member - field","slug":"member-field","link":"#member-field","children":[]},{"level":2,"title":"method - field","slug":"method-field","link":"#method-field","children":[]},{"level":2,"title":"constructor - field","slug":"constructor-field","link":"#constructor-field","children":[]},{"level":2,"title":"result - field","slug":"result-field","link":"#result-field","children":[]},{"level":2,"title":"dataExtra - field","slug":"dataextra-field","link":"#dataextra-field","children":[]},{"level":2,"title":"hasThrowable - field","slug":"hasthrowable-field","link":"#hasthrowable-field","children":[]},{"level":2,"title":"throwable - field","slug":"throwable-field","link":"#throwable-field","children":[]},{"level":2,"title":"Throwable.throwToApp - i-ext-method","slug":"throwable-throwtoapp-i-ext-method","link":"#throwable-throwtoapp-i-ext-method","children":[]},{"level":2,"title":"result - method","slug":"result-method","link":"#result-method","children":[]},{"level":2,"title":"instance - method","slug":"instance-method","link":"#instance-method","children":[]},{"level":2,"title":"instanceOrNull - method","slug":"instanceornull-method","link":"#instanceornull-method","children":[]},{"level":2,"title":"args - method","slug":"args-method","link":"#args-method","children":[]},{"level":2,"title":"args - method","slug":"args-method-1","link":"#args-method-1","children":[]},{"level":2,"title":"callOriginal - method","slug":"calloriginal-method","link":"#calloriginal-method","children":[]},{"level":2,"title":"invokeOriginal - method","slug":"invokeoriginal-method","link":"#invokeoriginal-method","children":[]},{"level":2,"title":"resultTrue - method","slug":"resulttrue-method","link":"#resulttrue-method","children":[]},{"level":2,"title":"resultFalse - method","slug":"resultfalse-method","link":"#resultfalse-method","children":[]},{"level":2,"title":"resultNull - method","slug":"resultnull-method","link":"#resultnull-method","children":[]},{"level":2,"title":"ArgsIndexCondition - class","slug":"argsindexcondition-class","link":"#argsindexcondition-class","children":[{"level":3,"title":"first - method","slug":"first-method","link":"#first-method","children":[]},{"level":3,"title":"last - method","slug":"last-method","link":"#last-method","children":[]}]},{"level":2,"title":"ArgsModifyer - class","slug":"argsmodifyer-class","link":"#argsmodifyer-class","children":[{"level":3,"title":"cast - method","slug":"cast-method","link":"#cast-method","children":[]},{"level":3,"title":"byte - method","slug":"byte-method","link":"#byte-method","children":[]},{"level":3,"title":"int - method","slug":"int-method","link":"#int-method","children":[]},{"level":3,"title":"long - method","slug":"long-method","link":"#long-method","children":[]},{"level":3,"title":"short - method","slug":"short-method","link":"#short-method","children":[]},{"level":3,"title":"double - method","slug":"double-method","link":"#double-method","children":[]},{"level":3,"title":"float - method","slug":"float-method","link":"#float-method","children":[]},{"level":3,"title":"string - method","slug":"string-method","link":"#string-method","children":[]},{"level":3,"title":"char - method","slug":"char-method","link":"#char-method","children":[]},{"level":3,"title":"boolean - method","slug":"boolean-method","link":"#boolean-method","children":[]},{"level":3,"title":"any - method","slug":"any-method","link":"#any-method","children":[]},{"level":3,"title":"array - method","slug":"array-method","link":"#array-method","children":[]},{"level":3,"title":"list - method","slug":"list-method","link":"#list-method","children":[]},{"level":3,"title":"set - method","slug":"set-method","link":"#set-method","children":[]},{"level":3,"title":"setNull - method","slug":"setnull-method","link":"#setnull-method","children":[]},{"level":3,"title":"setTrue - method","slug":"settrue-method","link":"#settrue-method","children":[]},{"level":3,"title":"setFalse - method","slug":"setfalse-method","link":"#setfalse-method","children":[]}]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":10}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/param/HookParam.md"}');export{e as data};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-9af56c1a","path":"/en/api/public/com/highcapable/yukihookapi/hook/bean/HookResources.html","title":"HookResources - class","lang":"en-US","frontmatter":{"next":{"text":"特色功能","link":"/zh-cn/api/special-features/reflection"},"pageClass":"code-page"},"headers":[],"git":{"updatedTime":1664299331000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":1}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/bean/HookResources.md"}');export{e as data};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-1c516d22","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/bean/HookResources.html","title":"HookResources - class","lang":"zh-CN","frontmatter":{"next":{"text":"特色功能","link":"/zh-cn/api/special-features/reflection"},"pageClass":"code-page"},"headers":[],"git":{"updatedTime":1663397167000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":1}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/bean/HookResources.md"}');export{e as data};

View File

@@ -0,0 +1,2 @@
import{_ as s,o,c as e,a}from"./app-BpUB8-Q8.js";const n={},t=a(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="hookresources-class" tabindex="-1"><a class="header-anchor" href="#hookresources-class" aria-hidden="true">#</a> HookResources <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">HookResources</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> instance: </span><span style="color:#F69D50;">YukiResources</span><span style="color:#ADBAC7;">?)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.80</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>创建一个当前 Hook 的 <code>YukiResources</code> 接管类。</p></blockquote>`,7),c=[t];function r(l,p){return o(),e("div",null,c)}const d=s(n,[["render",r],["__file","HookResources.html.vue"]]);export{d as default};

View File

@@ -0,0 +1,2 @@
import{_ as s,o,c as e,a}from"./app-BpUB8-Q8.js";const c={},n=a(`<h1 id="hookresources-class" tabindex="-1"><a class="header-anchor" href="#hookresources-class" aria-hidden="true">#</a> HookResources <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">HookResources</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> instance: </span><span style="color:#F69D50;">YukiResources</span><span style="color:#ADBAC7;">?)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.80</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>创建一个当前 Hook 的 <code>YukiResources</code> 接管类。</p></blockquote>`,6),l=[n];function r(t,p){return o(),e("div",null,l)}const i=s(c,[["render",r],["__file","HookResources.html.vue"]]);export{i as default};

View File

@@ -0,0 +1,5 @@
import{_ as o,o as e,c as s,a as n}from"./app-BpUB8-Q8.js";const a={},c=n(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="iyukihookxposedinit-interface" tabindex="-1"><a class="header-anchor" href="#iyukihookxposedinit-interface" aria-hidden="true">#</a> IYukiHookXposedInit <span class="symbol">- interface</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">interface</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">IYukiHookXposedInit</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.80</code> <code>修改</code> <code>作废</code></p><p>作废了 <s><code>YukiHookXposedInitProxy</code></s> 名称但保留接口</p><p>迁移到 <code>IYukiHookXposedInit</code> 新名称</p><p><strong>功能描述</strong></p><blockquote><p>YukiHookAPI 的 Xposed 装载 API 调用接口。</p></blockquote><h2 id="oninit-method" tabindex="-1"><a class="header-anchor" href="#oninit-method" aria-hidden="true">#</a> onInit <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onInit</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.5</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>配置 <code>YukiHookAPI.Configs</code> 的初始化方法。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>在这里只能进行初始化配置,不能进行 Hook 操作。</p></div><p>此方法可选,你也可以选择不对 <a href="../../../YukiHookAPI#configs-object">YukiHookAPI.Configs</a> 进行配置。</p><h2 id="onhook-method" tabindex="-1"><a class="header-anchor" href="#onhook-method" aria-hidden="true">#</a> onHook <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onHook</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>Xposed API 的模块装载调用入口方法。</p></blockquote><h2 id="onxposedevent-method" tabindex="-1"><a class="header-anchor" href="#onxposedevent-method" aria-hidden="true">#</a> onXposedEvent <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onXposedEvent</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.80</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>监听 Xposed 原生装载事件。</p></blockquote><p>若你的 Hook 事件中存在需要兼容的原生 Xposed 功能,可在这里实现。</p><p>请在这里使用 <a href="../bridge/event/YukiXposedEvent">YukiXposedEvent</a> 创建回调事件监听。</p><p>可监听的事件如下:</p><p><code>YukiXposedEvent.onInitZygote</code></p><p><code>YukiXposedEvent.onHandleLoadPackage</code></p><p><code>YukiXposedEvent.onHandleInitPackageResources</code></p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>此接口仅供监听和实现原生 Xposed API 的功能,请不要在这里操作 <strong>YukiHookAPI</strong>。</p></div><h1 class="deprecated">YukiHookXposedInitProxy - interface</h1><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.80</code> <code>作废</code></p><p>请迁移到 <code>IYukiHookXposedInit</code></p>`,42),d=[c];function p(t,i){return e(),s("div",null,d)}const r=o(a,[["render",p],["__file","IYukiHookXposedInit.html.vue"]]);export{r as default};

View File

@@ -0,0 +1 @@
const o=JSON.parse('{"key":"v-1d680acc","path":"/en/api/public/com/highcapable/yukihookapi/hook/xposed/proxy/IYukiHookXposedInit.html","title":"IYukiHookXposedInit - interface","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"onInit - method","slug":"oninit-method","link":"#oninit-method","children":[]},{"level":2,"title":"onHook - method","slug":"onhook-method","link":"#onhook-method","children":[]},{"level":2,"title":"onXposedEvent - method","slug":"onxposedevent-method","link":"#onxposedevent-method","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":3}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/xposed/proxy/IYukiHookXposedInit.md"}');export{o as data};

View File

@@ -0,0 +1,5 @@
import{_ as o,o as e,c as s,a as n}from"./app-BpUB8-Q8.js";const t={},a=n(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="iyukihookxposedinit-interface" tabindex="-1"><a class="header-anchor" href="#iyukihookxposedinit-interface" aria-hidden="true">#</a> IYukiHookXposedInit <span class="symbol">- interface</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">interface</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">IYukiHookXposedInit</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.80</code> <code>modified</code> <code>deprecated</code></p><p>作废了 <s><code>YukiHookXposedInitProxy</code></s> 名称但保留接口</p><p>迁移到 <code>IYukiHookXposedInit</code> 新名称</p><p><strong>Function Illustrate</strong></p><blockquote><p>YukiHookAPI 的 Xposed 装载 API 调用接口。</p></blockquote><h2 id="oninit-method" tabindex="-1"><a class="header-anchor" href="#oninit-method" aria-hidden="true">#</a> onInit <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onInit</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.5</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>配置 <code>YukiHookAPI.Configs</code> 的初始化方法。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>在这里只能进行初始化配置,不能进行 Hook 操作。</p></div><p>此方法可选,你也可以选择不对 <a href="../../../YukiHookAPI#configs-object">YukiHookAPI.Configs</a> 进行配置。</p><h2 id="onhook-method" tabindex="-1"><a class="header-anchor" href="#onhook-method" aria-hidden="true">#</a> onHook <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onHook</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>Xposed API 的模块装载调用入口方法。</p></blockquote><h2 id="onxposedevent-method" tabindex="-1"><a class="header-anchor" href="#onxposedevent-method" aria-hidden="true">#</a> onXposedEvent <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onXposedEvent</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.80</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>监听 Xposed 原生装载事件。</p></blockquote><p>若你的 Hook 事件中存在需要兼容的原生 Xposed 功能,可在这里实现。</p><p>请在这里使用 <a href="../bridge/event/YukiXposedEvent">YukiXposedEvent</a> 创建回调事件监听。</p><p>可监听的事件如下:</p><p><code>YukiXposedEvent.onInitZygote</code></p><p><code>YukiXposedEvent.onHandleLoadPackage</code></p><p><code>YukiXposedEvent.onHandleInitPackageResources</code></p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>此接口仅供监听和实现原生 Xposed API 的功能,请不要在这里操作 <strong>YukiHookAPI</strong>。</p></div><h1 class="deprecated">YukiHookXposedInitProxy - interface</h1><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.80</code> <code>deprecated</code></p><p>请迁移到 <code>IYukiHookXposedInit</code></p>`,43),c=[a];function d(p,i){return e(),s("div",null,c)}const l=o(t,[["render",d],["__file","IYukiHookXposedInit.html.vue"]]);export{l as default};

View File

@@ -0,0 +1 @@
const o=JSON.parse('{"key":"v-763140ee","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/xposed/proxy/IYukiHookXposedInit.html","title":"IYukiHookXposedInit - interface","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"onInit - method","slug":"oninit-method","link":"#oninit-method","children":[]},{"level":2,"title":"onHook - method","slug":"onhook-method","link":"#onhook-method","children":[]},{"level":2,"title":"onXposedEvent - method","slug":"onxposedevent-method","link":"#onxposedevent-method","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":3}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/xposed/proxy/IYukiHookXposedInit.md"}');export{o as data};

View File

@@ -0,0 +1,8 @@
import{_ as s,o,c as n,a}from"./app-BpUB8-Q8.js";const e={},p=a(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="injectyukihookwithxposed-annotation" tabindex="-1"><a class="header-anchor" href="#injectyukihookwithxposed-annotation" aria-hidden="true">#</a> InjectYukiHookWithXposed <span class="symbol">- annotation</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">annotation</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">InjectYukiHookWithXposed</span><span style="color:#ADBAC7;">(</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> sourcePath: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> modulePackageName: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> entryClassName: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> isUsingXposedModuleStatus: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> isUsingResourcesHook: </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.80</code> <code>修改</code></p><p>新增 <code>entryClassName</code> 参数</p><p><code>v1.0.92</code> <code>修改</code></p><p>新增 <code>isUsingResourcesHook</code> 参数</p><p><code>v1.2.0</code> <code>修改</code></p><p>新增 <code>isUsingXposedModuleStatus</code> 参数</p><p><strong>功能描述</strong></p><blockquote><p>标识 <code>YukiHookAPI</code> 注入 Xposed 入口的类注解。</p></blockquote><p><strong>功能示例</strong></p><p>详情请参考 <a href="../../../../../../../config/xposed-using#injectyukihookwithxposed-%E6%B3%A8%E8%A7%A3">InjectYukiHookWithXposed 注解</a>。</p>`,15),c=[p];function l(t,i){return o(),n("div",null,c)}const d=s(e,[["render",l],["__file","InjectYukiHookWithXposed.html.vue"]]);export{d as default};

View File

@@ -0,0 +1,8 @@
import{_ as o,o as s,c as n,a as e}from"./app-BpUB8-Q8.js";const a={},t=e(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="injectyukihookwithxposed-annotation" tabindex="-1"><a class="header-anchor" href="#injectyukihookwithxposed-annotation" aria-hidden="true">#</a> InjectYukiHookWithXposed <span class="symbol">- annotation</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">annotation</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">InjectYukiHookWithXposed</span><span style="color:#ADBAC7;">(</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> sourcePath: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> modulePackageName: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> entryClassName: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> isUsingXposedModuleStatus: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> isUsingResourcesHook: </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.80</code> <code>modified</code></p><p>新增 <code>entryClassName</code> 参数</p><p><code>v1.0.92</code> <code>modified</code></p><p>新增 <code>isUsingResourcesHook</code> 参数</p><p><code>v1.2.0</code> <code>modified</code></p><p>新增 <code>isUsingXposedModuleStatus</code> 参数</p><p><strong>Function Illustrate</strong></p><blockquote><p>标识 <code>YukiHookAPI</code> 注入 Xposed 入口的类注解。</p></blockquote><p><strong>Function Example</strong></p><p>详情请参考 <a href="../../../../../../../config/xposed-using#injectyukihookwithxposed-annotation">InjectYukiHookWithXposed Annotation</a>。</p>`,16),c=[t];function p(l,i){return s(),n("div",null,c)}const d=o(a,[["render",p],["__file","InjectYukiHookWithXposed.html.vue"]]);export{d as default};

View File

@@ -0,0 +1 @@
const o=JSON.parse('{"key":"v-818b3ca6","path":"/en/api/public/com/highcapable/yukihookapi/annotation/xposed/InjectYukiHookWithXposed.html","title":"InjectYukiHookWithXposed - annotation","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":3}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/annotation/xposed/InjectYukiHookWithXposed.md"}');export{o as data};

View File

@@ -0,0 +1 @@
const o=JSON.parse('{"key":"v-30f3ba1e","path":"/zh-cn/api/public/com/highcapable/yukihookapi/annotation/xposed/InjectYukiHookWithXposed.html","title":"InjectYukiHookWithXposed - annotation","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":4}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/annotation/xposed/InjectYukiHookWithXposed.md"}');export{o as data};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-77f11cf9","path":"/en/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/MemberRules.html","title":"MemberRules - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"modifiers - method","slug":"modifiers-method","link":"#modifiers-method","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":3}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/MemberRules.md"}');export{e as data};

View File

@@ -0,0 +1,3 @@
import{_ as e,o as s,c as o,a}from"./app-BpUB8-Q8.js";const n={},t=a(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="memberrules-class" tabindex="-1"><a class="header-anchor" href="#memberrules-class" aria-hidden="true">#</a> MemberRules <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">MemberRules</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> rulesData: </span><span style="color:#F69D50;">MemberRulesData</span><span style="color:#ADBAC7;">) : </span><span style="color:#F69D50;">BaseRules</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Member</code> 查找条件实现类。</p></blockquote><h2 id="modifiers-method" tabindex="-1"><a class="header-anchor" href="#modifiers-method" aria-hidden="true">#</a> modifiers <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">modifiers</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ModifierConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Member</code> 标识符筛选条件。</p></blockquote><p>可不设置筛选条件。</p>`,15),l=[t];function c(r,p){return s(),o("div",null,l)}const d=e(n,[["render",c],["__file","MemberRules.html.vue"]]);export{d as default};

View File

@@ -0,0 +1,3 @@
import{_ as s,o as e,c as o,a}from"./app-BpUB8-Q8.js";const n={},l=a(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="memberrules-class" tabindex="-1"><a class="header-anchor" href="#memberrules-class" aria-hidden="true">#</a> MemberRules <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">MemberRules</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> rulesData: </span><span style="color:#F69D50;">MemberRulesData</span><span style="color:#ADBAC7;">) : </span><span style="color:#F69D50;">BaseRules</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Member</code> 查找条件实现类。</p></blockquote><h2 id="modifiers-method" tabindex="-1"><a class="header-anchor" href="#modifiers-method" aria-hidden="true">#</a> modifiers <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">modifiers</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ModifierConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Member</code> 标识符筛选条件。</p></blockquote><p>可不设置筛选条件。</p>`,14),c=[l];function t(p,r){return e(),o("div",null,c)}const i=s(n,[["render",t],["__file","MemberRules.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-2cab152c","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/MemberRules.html","title":"MemberRules - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"modifiers - method","slug":"modifiers-method","link":"#modifiers-method","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":4}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/MemberRules.md"}');export{e as data};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-b8000f3a","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/result/MemberRulesResult.html","title":"MemberRulesResult - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"none - method","slug":"none-method","link":"#none-method","children":[]},{"level":2,"title":"count - method","slug":"count-method","link":"#count-method","children":[]},{"level":2,"title":"count - method","slug":"count-method-1","link":"#count-method-1","children":[]},{"level":2,"title":"count - method","slug":"count-method-2","link":"#count-method-2","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":3}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/result/MemberRulesResult.md"}');export{e as data};

View File

@@ -0,0 +1,6 @@
import{_ as s,o as e,c as o,a}from"./app-BpUB8-Q8.js";const n={},l=a(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="memberrulesresult-class" tabindex="-1"><a class="header-anchor" href="#memberrulesresult-class" aria-hidden="true">#</a> MemberRulesResult <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">MemberRulesResult</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> rulesData: </span><span style="color:#F69D50;">MemberRulesData</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>当前 <code>Member</code> 查找条件结果实现类。</p></blockquote><h2 id="none-method" tabindex="-1"><a class="header-anchor" href="#none-method" aria-hidden="true">#</a> none <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">none</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">MemberRulesResult</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置当前 <code>Member</code> 在查找条件中个数为 <code>0</code>。</p></blockquote><h2 id="count-method" tabindex="-1"><a class="header-anchor" href="#count-method" aria-hidden="true">#</a> count <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">count</span><span style="color:#ADBAC7;">(num: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">MemberRulesResult</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置当前 <code>Member</code> 在查找条件中需要全部匹配的个数。</p></blockquote><h2 id="count-method-1" tabindex="-1"><a class="header-anchor" href="#count-method-1" aria-hidden="true">#</a> count <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">count</span><span style="color:#ADBAC7;">(numRange: </span><span style="color:#F69D50;">IntRange</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">MemberRulesResult</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置当前 <code>Member</code> 在查找条件中需要全部匹配的个数范围。</p></blockquote><h2 id="count-method-2" tabindex="-1"><a class="header-anchor" href="#count-method-2" aria-hidden="true">#</a> count <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">count</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">CountConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">MemberRulesResult</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置当前 <code>Member</code> 在查找条件中需要全部匹配的个数条件。</p></blockquote>`,31),t=[l];function c(p,r){return e(),o("div",null,t)}const i=s(n,[["render",c],["__file","MemberRulesResult.html.vue"]]);export{i as default};

View File

@@ -0,0 +1,6 @@
import{_ as e,o as s,c as o,a as n}from"./app-BpUB8-Q8.js";const a={},t=n(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="memberrulesresult-class" tabindex="-1"><a class="header-anchor" href="#memberrulesresult-class" aria-hidden="true">#</a> MemberRulesResult <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">MemberRulesResult</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> rulesData: </span><span style="color:#F69D50;">MemberRulesData</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>当前 <code>Member</code> 查找条件结果实现类。</p></blockquote><h2 id="none-method" tabindex="-1"><a class="header-anchor" href="#none-method" aria-hidden="true">#</a> none <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">none</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">MemberRulesResult</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置当前 <code>Member</code> 在查找条件中个数为 <code>0</code>。</p></blockquote><h2 id="count-method" tabindex="-1"><a class="header-anchor" href="#count-method" aria-hidden="true">#</a> count <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">count</span><span style="color:#ADBAC7;">(num: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">MemberRulesResult</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置当前 <code>Member</code> 在查找条件中需要全部匹配的个数。</p></blockquote><h2 id="count-method-1" tabindex="-1"><a class="header-anchor" href="#count-method-1" aria-hidden="true">#</a> count <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">count</span><span style="color:#ADBAC7;">(numRange: </span><span style="color:#F69D50;">IntRange</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">MemberRulesResult</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置当前 <code>Member</code> 在查找条件中需要全部匹配的个数范围。</p></blockquote><h2 id="count-method-2" tabindex="-1"><a class="header-anchor" href="#count-method-2" aria-hidden="true">#</a> count <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">count</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">CountConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">MemberRulesResult</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置当前 <code>Member</code> 在查找条件中需要全部匹配的个数条件。</p></blockquote>`,32),l=[t];function c(r,p){return s(),o("div",null,l)}const i=e(a,[["render",c],["__file","MemberRulesResult.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-5e375d98","path":"/en/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/result/MemberRulesResult.html","title":"MemberRulesResult - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"none - method","slug":"none-method","link":"#none-method","children":[]},{"level":2,"title":"count - method","slug":"count-method","link":"#count-method","children":[]},{"level":2,"title":"count - method","slug":"count-method-1","link":"#count-method-1","children":[]},{"level":2,"title":"count - method","slug":"count-method-2","link":"#count-method-2","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":2}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/result/MemberRulesResult.md"}');export{e as data};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-fd738322","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/members/MethodFinder.html","title":"MethodFinder - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"name - field","slug":"name-field","link":"#name-field","children":[]},{"level":2,"title":"paramCount - field","slug":"paramcount-field","link":"#paramcount-field","children":[]},{"level":2,"title":"returnType - field","slug":"returntype-field","link":"#returntype-field","children":[]},{"level":2,"title":"modifiers - method","slug":"modifiers-method","link":"#modifiers-method","children":[]},{"level":2,"title":"emptyParam - method","slug":"emptyparam-method","link":"#emptyparam-method","children":[]},{"level":2,"title":"param - method","slug":"param-method","link":"#param-method","children":[]},{"level":2,"title":"param - method","slug":"param-method-1","link":"#param-method-1","children":[]},{"level":2,"title":"order - method","slug":"order-method","link":"#order-method","children":[]},{"level":2,"title":"name - method","slug":"name-method","link":"#name-method","children":[]},{"level":2,"title":"name - method","slug":"name-method-1","link":"#name-method-1","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method","link":"#paramcount-method","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method-1","link":"#paramcount-method-1","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method-2","link":"#paramcount-method-2","children":[]},{"level":2,"title":"returnType - method","slug":"returntype-method","link":"#returntype-method","children":[]},{"level":2,"title":"returnType - method","slug":"returntype-method-1","link":"#returntype-method-1","children":[]},{"level":2,"title":"superClass - method","slug":"superclass-method","link":"#superclass-method","children":[]},{"level":2,"title":"RemedyPlan - class","slug":"remedyplan-class","link":"#remedyplan-class","children":[{"level":3,"title":"method - method","slug":"method-method","link":"#method-method","children":[]},{"level":3,"title":"Result - class","slug":"result-class","link":"#result-class","children":[]}]},{"level":2,"title":"Process - class","slug":"process-class","link":"#process-class","children":[{"level":3,"title":"result - method","slug":"result-method","link":"#result-method","children":[]},{"level":3,"title":"all - method","slug":"all-method","link":"#all-method","children":[]},{"level":3,"title":"remedys - method","slug":"remedys-method","link":"#remedys-method","children":[]},{"level":3,"title":"onNoSuchMethod - method","slug":"onnosuchmethod-method","link":"#onnosuchmethod-method","children":[]}]},{"level":2,"title":"Result - class","slug":"result-class-1","link":"#result-class-1","children":[{"level":3,"title":"result - method","slug":"result-method-1","link":"#result-method-1","children":[]},{"level":3,"title":"get - method","slug":"get-method","link":"#get-method","children":[]},{"level":3,"title":"all - method","slug":"all-method-1","link":"#all-method-1","children":[]},{"level":3,"title":"give - method","slug":"give-method","link":"#give-method","children":[]},{"level":3,"title":"giveAll - method","slug":"giveall-method","link":"#giveall-method","children":[]},{"level":3,"title":"wait - method","slug":"wait-method","link":"#wait-method","children":[]},{"level":3,"title":"waitAll - method","slug":"waitall-method","link":"#waitall-method","children":[]},{"level":3,"title":"remedys - method","slug":"remedys-method-1","link":"#remedys-method-1","children":[]},{"level":3,"title":"onNoSuchMethod - method","slug":"onnosuchmethod-method-1","link":"#onnosuchmethod-method-1","children":[]},{"level":3,"title":"ignored - method","slug":"ignored-method","link":"#ignored-method","children":[]},{"level":3,"title":"Instance - class","slug":"instance-class","link":"#instance-class","children":[]},{"level":3,"title":"array - method","slug":"array-method","link":"#array-method","children":[]},{"level":3,"title":"list - method","slug":"list-method","link":"#list-method","children":[]}]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":10}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/members/MethodFinder.md"}');export{e as data};

View File

@@ -0,0 +1,104 @@
import{_ as s,o as e,c as o,a}from"./app-BpUB8-Q8.js";const n={},l=a(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="methodfinder-class" tabindex="-1"><a class="header-anchor" href="#methodfinder-class" aria-hidden="true">#</a> MethodFinder <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">MethodFinder</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">override</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> classSet: </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;) : </span><span style="color:#F69D50;">MemberBaseFinder</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.2</code> <code>modified</code></p><p>合并到 <code>BaseFinder</code></p><p><code>v1.1.0</code> <code>modified</code></p><p>合并到 <code>MemberBaseFinder</code></p><p><code>v1.1.8</code> <code>modified</code></p><p>移动 <code>hookInstance</code> 参数到 <code>MemberBaseFinder.MemberHookerManager</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Method</code> 查找类。</p></blockquote><p>可通过指定类型查找指定 <code>Method</code> 或一组 <code>Method</code>。</p><h2 id="name-field" tabindex="-1"><a class="header-anchor" href="#name-field" aria-hidden="true">#</a> name <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.70</code> <code>modified</code></p><p>允许不填写名称</p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 名称。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>若不填写名称则必须存在一个其它条件。</p></div><h2 id="paramcount-field" tabindex="-1"><a class="header-anchor" href="#paramcount-field" aria-hidden="true">#</a> paramCount <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> paramCount: </span><span style="color:#F69D50;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.67</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 参数个数。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此变量指定参数个数。</p><p>若参数个数小于零则忽略并使用 <code>param</code>。</p><h2 id="returntype-field" tabindex="-1"><a class="header-anchor" href="#returntype-field" aria-hidden="true">#</a> returnType <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> returnType: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 返回值,可不填写返回值。</p></blockquote><h2 id="modifiers-method" tabindex="-1"><a class="header-anchor" href="#modifiers-method" aria-hidden="true">#</a> modifiers <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">modifiers</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ModifierConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.67</code> <code>added</code></p><p><code>v1.0.80</code> <code>modified</code></p><p>将方法体进行 inline</p><p><code>v1.1.0</code> <code>modified</code></p><p>合并到 <code>ModifierConditions</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 标识符筛选条件。</p></blockquote><p>可不设置筛选条件。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="emptyparam-method" tabindex="-1"><a class="header-anchor" href="#emptyparam-method" aria-hidden="true">#</a> emptyParam <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">emptyParam</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.75</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 空参数、无参数。</p></blockquote><h2 id="param-method" tabindex="-1"><a class="header-anchor" href="#param-method" aria-hidden="true">#</a> param <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> paramType: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 参数。</p></blockquote><p>如果同时使用了 <code>paramCount</code> 则 <code>paramType</code> 的数量必须与 <code>paramCount</code> 完全匹配。</p><p>如果 <code>Method</code> 中存在一些无意义又很长的类型,你可以使用 <a href="../../../type/defined/DefinedTypeFactory#vaguetype-field">VagueType</a> 来替代它。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>无参 <strong>Method</strong> 请使用 <strong>emptyParam</strong> 设置查找条件。</p><p>有参 <strong>Method</strong> 必须使用此方法设定参数或使用 <strong>paramCount</strong> 指定个数。</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="param-method-1" tabindex="-1"><a class="header-anchor" href="#param-method-1" aria-hidden="true">#</a> param <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ObjectsConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.5</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 参数条件。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>无参 <strong>Method</strong> 请使用 <strong>emptyParam</strong> 设置查找条件。</p><p>有参 <strong>Method</strong> 必须使用此方法设定参数或使用 <strong>paramCount</strong> 指定个数。</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="order-method" tabindex="-1"><a class="header-anchor" href="#order-method" aria-hidden="true">#</a> order <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">order</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>顺序筛选字节码的下标。</p></blockquote><h2 id="name-method" tabindex="-1"><a class="header-anchor" href="#name-method" aria-hidden="true">#</a> name <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">name</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 名称。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>若不填写名称则必须存在一个其它条件。</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="name-method-1" tabindex="-1"><a class="header-anchor" href="#name-method-1" aria-hidden="true">#</a> name <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">name</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">NameConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.88</code> <code>added</code></p><p><code>v1.1.0</code> <code>modified</code></p><p>合并到 <code>NameConditions</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 名称条件。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>若不填写名称则必须存在一个其它条件。</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="paramcount-method" tabindex="-1"><a class="header-anchor" href="#paramcount-method" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(num: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 参数个数。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数。</p><p>若参数个数小于零则忽略并使用 <code>param</code>。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="paramcount-method-1" tabindex="-1"><a class="header-anchor" href="#paramcount-method-1" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(numRange: </span><span style="color:#F69D50;">IntRange</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 参数个数范围。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数范围。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="paramcount-method-2" tabindex="-1"><a class="header-anchor" href="#paramcount-method-2" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">CountConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 参数个数条件。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数条件。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="returntype-method" tabindex="-1"><a class="header-anchor" href="#returntype-method" aria-hidden="true">#</a> returnType <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">returnType</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.70</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 返回值。</p></blockquote><p>可不填写返回值。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="returntype-method-1" tabindex="-1"><a class="header-anchor" href="#returntype-method-1" aria-hidden="true">#</a> returnType <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">returnType</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ObjectConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.5</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 返回值条件。</p></blockquote><p>可不填写返回值。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="superclass-method" tabindex="-1"><a class="header-anchor" href="#superclass-method" aria-hidden="true">#</a> superClass <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">superClass</span><span style="color:#ADBAC7;">(isOnlySuperClass: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.80</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置在 <code>classSet</code> 的所有父类中查找当前 <code>Method</code>。</p></blockquote><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>若当前 <strong>classSet</strong> 的父类较多可能会耗时API 会自动循环到父类继承是 <strong>Any</strong> 前的最后一个类。</p></div><h2 id="remedyplan-class" tabindex="-1"><a class="header-anchor" href="#remedyplan-class" aria-hidden="true">#</a> RemedyPlan <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">RemedyPlan</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Method</code> 重查找实现类,可累计失败次数直到查找成功。</p></blockquote><h3 id="method-method" tabindex="-1"><a class="header-anchor" href="#method-method" aria-hidden="true">#</a> method <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MethodConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.80</code> <code>modified</code></p><p>将方法体进行 inline</p><p><strong>Function Illustrate</strong></p><blockquote><p>创建需要重新查找的 <code>Method</code>。</p></blockquote><p>你可以添加多个备选 <code>Method</code>,直到成功为止,若最后依然失败,将停止查找并输出错误日志。</p><h3 id="result-class" tabindex="-1"><a class="header-anchor" href="#result-class" aria-hidden="true">#</a> Result <span class="symbol">- class</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.1</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>RemedyPlan</code> 结果实现类。</p></blockquote><h4 id="onfind-method" tabindex="-1"><a class="header-anchor" href="#onfind-method" aria-hidden="true">#</a> onFind <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onFind</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Method</span><span style="color:#ADBAC7;">&gt;.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.1</code> <code>added</code></p><p><code>v1.1.0</code> <code>modified</code></p><p><code>initiate</code> 参数 <code>Method</code> 变为 <code>HashSet&lt;Method&gt;</code></p><p><code>v1.2.0</code> <code>modified</code></p><p><code>initiate</code> 类型由 <code>HashSet</code> 修改为 <code>MutableList</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>当在 <code>RemedyPlan</code> 中找到结果时。</p></blockquote><p><strong>Function Example</strong></p><p>你可以方便地对重查找的 <code>Method</code> 实现 <code>onFind</code> 方法。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">onFind</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="process-class" tabindex="-1"><a class="header-anchor" href="#process-class" aria-hidden="true">#</a> Process <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Process</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> isNoSuch: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">, </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> throwable: </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">?) : </span><span style="color:#F69D50;">BaseResult</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Method</code> 查找结果处理类,为 <code>hookManager</code> 提供。</p></blockquote><h3 id="result-method" tabindex="-1"><a class="header-anchor" href="#result-method" aria-hidden="true">#</a> result <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">Process</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Process</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>创建监听结果事件方法体。</p></blockquote><p><strong>Function Example</strong></p><p>你可以使用 <strong>lambda</strong> 形式创建 <code>Result</code> 类。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchMethod</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="all-method" tabindex="-1"><a class="header-anchor" href="#all-method" aria-hidden="true">#</a> all <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Process</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置全部查找条件匹配的多个 <code>Method</code> 实例结果到 <code>hookManager</code>。</p></blockquote><h3 id="remedys-method" tabindex="-1"><a class="header-anchor" href="#remedys-method" aria-hidden="true">#</a> remedys <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">RemedyPlan</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>创建 <code>Method</code> 重查找功能。</p></blockquote><p><strong>Function Example</strong></p><p>当你遇到一种 <code>Method</code> 可能存在不同形式的存在时,可以使用 <code>RemedyPlan</code> 重新查找它,而没有必要使用 <code>onNoSuchMethod</code> 捕获异常二次查找 <code>Method</code>。</p><p>若第一次查找失败了,你还可以在这里继续添加此方法体直到成功为止。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="onnosuchmethod-method" tabindex="-1"><a class="header-anchor" href="#onnosuchmethod-method" aria-hidden="true">#</a> onNoSuchMethod <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchMethod</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>监听找不到 <code>Method</code> 时。</p></blockquote><p>只会返回第一次的错误信息,不会返回 <code>RemedyPlan</code> 的错误信息。</p><h2 id="result-class-1" tabindex="-1"><a class="header-anchor" href="#result-class-1" aria-hidden="true">#</a> Result <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> isNoSuch: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">, </span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> throwable: </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">?) : </span><span style="color:#F69D50;">BaseResult</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.1.0</code> <code>modified</code></p><p>继承到接口 <code>BaseResult</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Method</code> 查找结果实现类。</p></blockquote><h3 id="result-method-1" tabindex="-1"><a class="header-anchor" href="#result-method-1" aria-hidden="true">#</a> result <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.80</code> <code>modified</code></p><p>将方法体进行 inline</p><p><strong>Function Illustrate</strong></p><blockquote><p>创建监听结果事件方法体。</p></blockquote><p><strong>Function Example</strong></p><p>你可以使用 <strong>lambda</strong> 形式创建 <code>Result</code> 类。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">get</span><span style="color:#ADBAC7;">(instance).</span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(instance)</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchMethod</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="get-method" tabindex="-1"><a class="header-anchor" href="#get-method" aria-hidden="true">#</a> get <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">(instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Instance</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.2</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得 <code>Method</code> 实例处理类。</p></blockquote><p>若有多个 <code>Method</code> 结果只会返回第一个。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>若你设置了 <strong>remedys</strong> 请使用 <strong>wait</strong> 回调结果方法。</p></div><p><strong>Function Example</strong></p><p>你可以通过获得方法所在实例来执行 <code>Method</code>。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">(instance).</span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>若当前为静态方法,你可以不设置实例。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="all-method-1" tabindex="-1"><a class="header-anchor" href="#all-method-1" aria-hidden="true">#</a> all <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><code>v1.2.0</code> <code>modified</code></p><p>返回值类型由 <code>ArrayList</code> 修改为 <code>MutableList</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得 <code>Method</code> 实例处理类数组。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Method</code> 实例结果。</p><p><strong>Function Example</strong></p><p>你可以通过此方法来获得当前条件结果中匹配的全部 <code>Method</code>,其方法所在实例用法与 <code>get</code> 相同。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(instance).</span><span style="color:#DCBDFB;">forEach</span><span style="color:#ADBAC7;"> { instance </span><span style="color:#F47067;">-&gt;</span></span>
<span class="line"><span style="color:#ADBAC7;"> instance.</span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">..</span><span style="color:#ADBAC7;">.)</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="give-method" tabindex="-1"><a class="header-anchor" href="#give-method" aria-hidden="true">#</a> give <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">give</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Method</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.67</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到 <code>Method</code> 本身。</p></blockquote><p>若有多个 <code>Method</code> 结果只会返回第一个。</p><p>在查找条件找不到任何结果的时候将返回 <code>null</code>。</p><h3 id="giveall-method" tabindex="-1"><a class="header-anchor" href="#giveall-method" aria-hidden="true">#</a> giveAll <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">giveAll</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Method</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><code>v1.2.0</code> <code>modified</code></p><p>返回值类型由 <code>HashSet</code> 修改为 <code>MutableList</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>得到 <code>Method</code> 本身数组。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Method</code> 实例。</p><p>在查找条件找不到任何结果的时候将返回空的 <code>MutableList</code>。</p><h3 id="wait-method" tabindex="-1"><a class="header-anchor" href="#wait-method" aria-hidden="true">#</a> wait <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">wait</span><span style="color:#ADBAC7;">(instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?, initiate: </span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.2</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得 <code>Method</code> 实例处理类,配合 <code>RemedyPlan</code> 使用。</p></blockquote><p>若有多个 <code>Method</code> 结果只会返回第一个。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>若你设置了 <strong>remedys</strong> 必须使用此方法才能获得结果。</p><p>若你没有设置 <strong>remedys</strong> 此方法将不会被回调。</p></div><h3 id="waitall-method" tabindex="-1"><a class="header-anchor" href="#waitall-method" aria-hidden="true">#</a> waitAll <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">waitAll</span><span style="color:#ADBAC7;">(instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?, initiate: </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">&gt;.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><code>v1.2.0</code> <code>modified</code></p><p><code>initiate</code> 类型由 <code>ArrayList</code> 修改为 <code>MutableList</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>获得 <code>Method</code> 实例处理类数组,配合 <code>RemedyPlan</code> 使用。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Method</code> 实例结果。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>若你设置了 <strong>remedys</strong> 必须使用此方法才能获得结果。</p><p>若你没有设置 <strong>remedys</strong> 此方法将不会被回调。</p></div><h3 id="remedys-method-1" tabindex="-1"><a class="header-anchor" href="#remedys-method-1" aria-hidden="true">#</a> remedys <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">RemedyPlan</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.80</code> <code>modified</code></p><p>将方法体进行 inline</p><p><strong>Function Illustrate</strong></p><blockquote><p>创建 <code>Method</code> 重查找功能。</p></blockquote><p><strong>Function Example</strong></p><p>当你遇到一种 <code>Method</code> 可能存在不同形式的存在时,可以使用 <code>RemedyPlan</code> 重新查找它,而没有必要使用 <code>onNoSuchMethod</code> 捕获异常二次查找 <code>Method</code>。</p><p>若第一次查找失败了,你还可以在这里继续添加此方法体直到成功为止。</p><blockquote><p>The following example</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="onnosuchmethod-method-1" tabindex="-1"><a class="header-anchor" href="#onnosuchmethod-method-1" aria-hidden="true">#</a> onNoSuchMethod <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchMethod</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0</code> <code>first</code></p><p><code>v1.0.80</code> <code>modified</code></p><p>将方法体进行 inline</p><p><strong>Function Illustrate</strong></p><blockquote><p>监听找不到 <code>Method</code> 时。</p></blockquote><p>只会返回第一次的错误信息,不会返回 <code>RemedyPlan</code> 的错误信息。</p><h3 id="ignored-method" tabindex="-1"><a class="header-anchor" href="#ignored-method" aria-hidden="true">#</a> ignored <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">ignored</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>忽略异常并停止打印任何错误日志。</p></blockquote><p>若 <code>MemberBaseFinder.MemberHookerManager.isNotIgnoredNoSuchMemberFailure</code> 为 <code>false</code> 则自动忽略。</p><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>此时若要监听异常结果,你需要手动实现 <strong>onNoSuchMethod</strong> 方法。</p></div><h3 class="deprecated">ignoredError - method</h3><p><strong>Change Records</strong></p><p><code>v1.0.3</code> <code>added</code></p><p><code>v1.1.0</code> <code>deprecated</code></p><p>请迁移到新方法 <code>ignored()</code></p><h3 id="instance-class" tabindex="-1"><a class="header-anchor" href="#instance-class" aria-hidden="true">#</a> Instance <span class="symbol">- class</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?, </span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> method: </span><span style="color:#F69D50;">Method</span><span style="color:#ADBAC7;">?)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.2</code> <code>added</code></p><p><code>v1.1.0</code> <code>modified</code></p><p>新增 <code>method</code> 参数</p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Method</code> 实例处理类。</p></blockquote><h4 id="original-method" tabindex="-1"><a class="header-anchor" href="#original-method" aria-hidden="true">#</a> original <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">original</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Instance</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>标识需要调用当前 <code>Method</code> 未经 Hook 的原始方法。</p></blockquote><p>若当前 <code>Method</code> 并未 Hook 则会使用原始的 <code>Method.invoke</code> 方法调用。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>你只能在 (Xposed) 宿主环境中使用此功能。</p></div><h4 id="call-method" tabindex="-1"><a class="header-anchor" href="#call-method" aria-hidden="true">#</a> call <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.2</code> <code>added</code></p><p><code>v1.1.6</code> <code>modified</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>执行 <code>Method</code>,不指定返回值类型。</p></blockquote><h4 id="invoke-method" tabindex="-1"><a class="header-anchor" href="#invoke-method" aria-hidden="true">#</a> invoke <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">invoke</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.2</code> <code>added</code></p><p><code>v1.1.6</code> <code>modified</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>执行 <code>Method</code>,指定 <code>T</code> 返回值类型。</p></blockquote><h4 id="byte-method" tabindex="-1"><a class="header-anchor" href="#byte-method" aria-hidden="true">#</a> byte <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">byte</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Byte</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.68</code> <code>added</code></p><p><code>v1.1.6</code> <code>modified</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>执行 <code>Method</code>,指定 Byte 返回值类型。</p></blockquote><h4 id="int-method" tabindex="-1"><a class="header-anchor" href="#int-method" aria-hidden="true">#</a> int <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">int</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.65</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>callInt</code></s> 为 <code>int</code></p><p><code>v1.1.6</code> <code>modified</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>执行 <code>Method</code>,指定 Int 返回值类型。</p></blockquote><h4 id="long-method" tabindex="-1"><a class="header-anchor" href="#long-method" aria-hidden="true">#</a> long <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">long</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Long</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.65</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>callLong</code></s> 为 <code>long</code></p><p><code>v1.1.6</code> <code>modified</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>执行 <code>Method</code>,指定 Long 返回值类型。</p></blockquote><h4 id="short-method" tabindex="-1"><a class="header-anchor" href="#short-method" aria-hidden="true">#</a> short <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">short</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Short</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.65</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>callShort</code></s> 为 <code>short</code></p><p><code>v1.1.6</code> <code>modified</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>执行 <code>Method</code>,指定 Short 返回值类型。</p></blockquote><h4 id="double-method" tabindex="-1"><a class="header-anchor" href="#double-method" aria-hidden="true">#</a> double <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">double</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Double</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.65</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>callDouble</code></s> 为 <code>double</code></p><p><code>v1.1.6</code> <code>modified</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>执行 <code>Method</code>,指定 Double 返回值类型。</p></blockquote><h4 id="float-method" tabindex="-1"><a class="header-anchor" href="#float-method" aria-hidden="true">#</a> float <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">float</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Float</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.65</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>callFloat</code></s> 为 <code>float</code></p><p><code>v1.1.6</code> <code>modified</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>执行 <code>Method</code>,指定 Float 返回值类型。</p></blockquote><h4 id="string-method" tabindex="-1"><a class="header-anchor" href="#string-method" aria-hidden="true">#</a> string <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">string</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.65</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>callString</code></s> 为 <code>string</code></p><p><code>v1.1.6</code> <code>modified</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>执行 <code>Method</code>,指定 String 返回值类型。</p></blockquote><h4 id="char-method" tabindex="-1"><a class="header-anchor" href="#char-method" aria-hidden="true">#</a> char <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">char</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Char</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.68</code> <code>added</code></p><p><code>v1.1.6</code> <code>modified</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>执行 <code>Method</code>,指定 Char 返回值类型。</p></blockquote><h4 id="boolean-method" tabindex="-1"><a class="header-anchor" href="#boolean-method" aria-hidden="true">#</a> boolean <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">boolean</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.65</code> <code>added</code></p><p><code>v1.0.68</code> <code>modified</code></p><p>修改 <s><code>callBoolean</code></s> 为 <code>boolean</code></p><p><code>v1.1.6</code> <code>modified</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>执行 <code>Method</code>,指定 Boolean 返回值类型。</p></blockquote><h3 id="array-method" tabindex="-1"><a class="header-anchor" href="#array-method" aria-hidden="true">#</a> array <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">array</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Array</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.68</code> <code>added</code></p><p><code>v1.1.6</code> <code>modified</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>执行 <code>Method</code>,指定 Array 返回值类型。</p></blockquote><h3 id="list-method" tabindex="-1"><a class="header-anchor" href="#list-method" aria-hidden="true">#</a> list <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">list</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">List</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.0.68</code> <code>added</code></p><p><code>v1.1.6</code> <code>modified</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>执行 <code>Method</code>,指定 List 返回值类型。</p></blockquote>`,470),p=[l];function c(t,d){return e(),o("div",null,p)}const i=s(n,[["render",c],["__file","MethodFinder.html.vue"]]);export{i as default};

View File

@@ -0,0 +1,104 @@
import{_ as s,o,c as e,a}from"./app-BpUB8-Q8.js";const n={},p=a(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="methodfinder-class" tabindex="-1"><a class="header-anchor" href="#methodfinder-class" aria-hidden="true">#</a> MethodFinder <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">MethodFinder</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">override</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> classSet: </span><span style="color:#F69D50;">Class</span><span style="color:#ADBAC7;">&lt;*&gt;) : </span><span style="color:#F69D50;">MemberBaseFinder</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.2</code> <code>修改</code></p><p>合并到 <code>BaseFinder</code></p><p><code>v1.1.0</code> <code>修改</code></p><p>合并到 <code>MemberBaseFinder</code></p><p><code>v1.1.8</code> <code>修改</code></p><p>移动 <code>hookInstance</code> 参数到 <code>MemberBaseFinder.MemberHookerManager</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Method</code> 查找类。</p></blockquote><p>可通过指定类型查找指定 <code>Method</code> 或一组 <code>Method</code>。</p><h2 id="name-field" tabindex="-1"><a class="header-anchor" href="#name-field" aria-hidden="true">#</a> name <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.70</code> <code>修改</code></p><p>允许不填写名称</p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 名称。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>若不填写名称则必须存在一个其它条件。</p></div><h2 id="paramcount-field" tabindex="-1"><a class="header-anchor" href="#paramcount-field" aria-hidden="true">#</a> paramCount <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> paramCount: </span><span style="color:#F69D50;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.67</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 参数个数。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此变量指定参数个数。</p><p>若参数个数小于零则忽略并使用 <code>param</code>。</p><h2 id="returntype-field" tabindex="-1"><a class="header-anchor" href="#returntype-field" aria-hidden="true">#</a> returnType <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> returnType: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 返回值,可不填写返回值。</p></blockquote><h2 id="modifiers-method" tabindex="-1"><a class="header-anchor" href="#modifiers-method" aria-hidden="true">#</a> modifiers <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">modifiers</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ModifierConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.67</code> <code>新增</code></p><p><code>v1.0.80</code> <code>修改</code></p><p>将方法体进行 inline</p><p><code>v1.1.0</code> <code>修改</code></p><p>合并到 <code>ModifierConditions</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 标识符筛选条件。</p></blockquote><p>可不设置筛选条件。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="emptyparam-method" tabindex="-1"><a class="header-anchor" href="#emptyparam-method" aria-hidden="true">#</a> emptyParam <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">emptyParam</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.75</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 空参数、无参数。</p></blockquote><h2 id="param-method" tabindex="-1"><a class="header-anchor" href="#param-method" aria-hidden="true">#</a> param <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> paramType: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 参数。</p></blockquote><p>如果同时使用了 <code>paramCount</code> 则 <code>paramType</code> 的数量必须与 <code>paramCount</code> 完全匹配。</p><p>如果 <code>Method</code> 中存在一些无意义又很长的类型,你可以使用 <a href="../../../type/defined/DefinedTypeFactory#vaguetype-field">VagueType</a> 来替代它。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>无参 <strong>Method</strong> 请使用 <strong>emptyParam</strong> 设置查找条件。</p><p>有参 <strong>Method</strong> 必须使用此方法设定参数或使用 <strong>paramCount</strong> 指定个数。</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="param-method-1" tabindex="-1"><a class="header-anchor" href="#param-method-1" aria-hidden="true">#</a> param <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ObjectsConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.5</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 参数条件。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>无参 <strong>Method</strong> 请使用 <strong>emptyParam</strong> 设置查找条件。</p><p>有参 <strong>Method</strong> 必须使用此方法设定参数或使用 <strong>paramCount</strong> 指定个数。</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="order-method" tabindex="-1"><a class="header-anchor" href="#order-method" aria-hidden="true">#</a> order <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">order</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>顺序筛选字节码的下标。</p></blockquote><h2 id="name-method" tabindex="-1"><a class="header-anchor" href="#name-method" aria-hidden="true">#</a> name <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">name</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">String</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 名称。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>若不填写名称则必须存在一个其它条件。</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="name-method-1" tabindex="-1"><a class="header-anchor" href="#name-method-1" aria-hidden="true">#</a> name <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">name</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">NameConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.88</code> <code>新增</code></p><p><code>v1.1.0</code> <code>修改</code></p><p>合并到 <code>NameConditions</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 名称条件。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>若不填写名称则必须存在一个其它条件。</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="paramcount-method" tabindex="-1"><a class="header-anchor" href="#paramcount-method" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(num: </span><span style="color:#F69D50;">Int</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 参数个数。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数。</p><p>若参数个数小于零则忽略并使用 <code>param</code>。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="paramcount-method-1" tabindex="-1"><a class="header-anchor" href="#paramcount-method-1" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(numRange: </span><span style="color:#F69D50;">IntRange</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 参数个数范围。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数范围。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="paramcount-method-2" tabindex="-1"><a class="header-anchor" href="#paramcount-method-2" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">CountConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 参数个数条件。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数条件。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="returntype-method" tabindex="-1"><a class="header-anchor" href="#returntype-method" aria-hidden="true">#</a> returnType <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">returnType</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">value</span><span style="color:#ADBAC7;">: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.70</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 返回值。</p></blockquote><p>可不填写返回值。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="returntype-method-1" tabindex="-1"><a class="header-anchor" href="#returntype-method-1" aria-hidden="true">#</a> returnType <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">returnType</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ObjectConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">IndexTypeCondition</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.5</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 返回值条件。</p></blockquote><p>可不填写返回值。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>存在多个 <strong>IndexTypeCondition</strong> 时除了 <strong>order</strong> 只会生效最后一个。</p></div><h2 id="superclass-method" tabindex="-1"><a class="header-anchor" href="#superclass-method" aria-hidden="true">#</a> superClass <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">superClass</span><span style="color:#ADBAC7;">(isOnlySuperClass: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.80</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置在 <code>classSet</code> 的所有父类中查找当前 <code>Method</code>。</p></blockquote><div class="custom-container warning"><p class="custom-container-title">注意</p><p>若当前 <strong>classSet</strong> 的父类较多可能会耗时API 会自动循环到父类继承是 <strong>Any</strong> 前的最后一个类。</p></div><h2 id="remedyplan-class" tabindex="-1"><a class="header-anchor" href="#remedyplan-class" aria-hidden="true">#</a> RemedyPlan <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">RemedyPlan</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Method</code> 重查找实现类,可累计失败次数直到查找成功。</p></blockquote><h3 id="method-method" tabindex="-1"><a class="header-anchor" href="#method-method" aria-hidden="true">#</a> method <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MethodConditions</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.80</code> <code>修改</code></p><p>将方法体进行 inline</p><p><strong>功能描述</strong></p><blockquote><p>创建需要重新查找的 <code>Method</code>。</p></blockquote><p>你可以添加多个备选 <code>Method</code>,直到成功为止,若最后依然失败,将停止查找并输出错误日志。</p><h3 id="result-class" tabindex="-1"><a class="header-anchor" href="#result-class" aria-hidden="true">#</a> Result <span class="symbol">- class</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.1</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p><code>RemedyPlan</code> 结果实现类。</p></blockquote><h4 id="onfind-method" tabindex="-1"><a class="header-anchor" href="#onfind-method" aria-hidden="true">#</a> onFind <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onFind</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Method</span><span style="color:#ADBAC7;">&gt;.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.1</code> <code>新增</code></p><p><code>v1.1.0</code> <code>修改</code></p><p><code>initiate</code> 参数 <code>Method</code> 变为 <code>HashSet&lt;Method&gt;</code></p><p><code>v1.2.0</code> <code>修改</code></p><p><code>initiate</code> 类型由 <code>HashSet</code> 修改为 <code>MutableList</code></p><p><strong>功能描述</strong></p><blockquote><p>当在 <code>RemedyPlan</code> 中找到结果时。</p></blockquote><p><strong>功能示例</strong></p><p>你可以方便地对重查找的 <code>Method</code> 实现 <code>onFind</code> 方法。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">onFind</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="process-class" tabindex="-1"><a class="header-anchor" href="#process-class" aria-hidden="true">#</a> Process <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Process</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> isNoSuch: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">, </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> throwable: </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">?) : </span><span style="color:#F69D50;">BaseResult</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Method</code> 查找结果处理类,为 <code>hookManager</code> 提供。</p></blockquote><h3 id="result-method" tabindex="-1"><a class="header-anchor" href="#result-method" aria-hidden="true">#</a> result <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">Process</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Process</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>创建监听结果事件方法体。</p></blockquote><p><strong>功能示例</strong></p><p>你可以使用 <strong>lambda</strong> 形式创建 <code>Result</code> 类。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchMethod</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="all-method" tabindex="-1"><a class="header-anchor" href="#all-method" aria-hidden="true">#</a> all <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Process</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置全部查找条件匹配的多个 <code>Method</code> 实例结果到 <code>hookManager</code>。</p></blockquote><h3 id="remedys-method" tabindex="-1"><a class="header-anchor" href="#remedys-method" aria-hidden="true">#</a> remedys <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">RemedyPlan</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>创建 <code>Method</code> 重查找功能。</p></blockquote><p><strong>功能示例</strong></p><p>当你遇到一种 <code>Method</code> 可能存在不同形式的存在时,可以使用 <code>RemedyPlan</code> 重新查找它,而没有必要使用 <code>onNoSuchMethod</code> 捕获异常二次查找 <code>Method</code>。</p><p>若第一次查找失败了,你还可以在这里继续添加此方法体直到成功为止。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="onnosuchmethod-method" tabindex="-1"><a class="header-anchor" href="#onnosuchmethod-method" aria-hidden="true">#</a> onNoSuchMethod <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchMethod</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>监听找不到 <code>Method</code> 时。</p></blockquote><p>只会返回第一次的错误信息,不会返回 <code>RemedyPlan</code> 的错误信息。</p><h2 id="result-class-1" tabindex="-1"><a class="header-anchor" href="#result-class-1" aria-hidden="true">#</a> Result <span class="symbol">- class</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> isNoSuch: </span><span style="color:#F69D50;">Boolean</span><span style="color:#ADBAC7;">, </span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> throwable: </span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">?) : </span><span style="color:#F69D50;">BaseResult</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.1.0</code> <code>修改</code></p><p>继承到接口 <code>BaseResult</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Method</code> 查找结果实现类。</p></blockquote><h3 id="result-method-1" tabindex="-1"><a class="header-anchor" href="#result-method-1" aria-hidden="true">#</a> result <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">Result</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.80</code> <code>修改</code></p><p>将方法体进行 inline</p><p><strong>功能描述</strong></p><blockquote><p>创建监听结果事件方法体。</p></blockquote><p><strong>功能示例</strong></p><p>你可以使用 <strong>lambda</strong> 形式创建 <code>Result</code> 类。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">result</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">get</span><span style="color:#ADBAC7;">(instance).</span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(instance)</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchMethod</span><span style="color:#ADBAC7;"> {}</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="get-method" tabindex="-1"><a class="header-anchor" href="#get-method" aria-hidden="true">#</a> get <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">(instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Instance</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.2</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获得 <code>Method</code> 实例处理类。</p></blockquote><p>若有多个 <code>Method</code> 结果只会返回第一个。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>若你设置了 <strong>remedys</strong> 请使用 <strong>wait</strong> 回调结果方法。</p></div><p><strong>功能示例</strong></p><p>你可以通过获得方法所在实例来执行 <code>Method</code>。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">(instance).</span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>若当前为静态方法,你可以不设置实例。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">get</span><span style="color:#ADBAC7;">().</span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="all-method-1" tabindex="-1"><a class="header-anchor" href="#all-method-1" aria-hidden="true">#</a> all <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><code>v1.2.0</code> <code>修改</code></p><p>返回值类型由 <code>ArrayList</code> 修改为 <code>MutableList</code></p><p><strong>功能描述</strong></p><blockquote><p>获得 <code>Method</code> 实例处理类数组。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Method</code> 实例结果。</p><p><strong>功能示例</strong></p><p>你可以通过此方法来获得当前条件结果中匹配的全部 <code>Method</code>,其方法所在实例用法与 <code>get</code> 相同。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">all</span><span style="color:#ADBAC7;">(instance).</span><span style="color:#DCBDFB;">forEach</span><span style="color:#ADBAC7;"> { instance </span><span style="color:#F47067;">-&gt;</span></span>
<span class="line"><span style="color:#ADBAC7;"> instance.</span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">..</span><span style="color:#ADBAC7;">.)</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="give-method" tabindex="-1"><a class="header-anchor" href="#give-method" aria-hidden="true">#</a> give <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">give</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Method</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.67</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>得到 <code>Method</code> 本身。</p></blockquote><p>若有多个 <code>Method</code> 结果只会返回第一个。</p><p>在查找条件找不到任何结果的时候将返回 <code>null</code>。</p><h3 id="giveall-method" tabindex="-1"><a class="header-anchor" href="#giveall-method" aria-hidden="true">#</a> giveAll <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">giveAll</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Method</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><code>v1.2.0</code> <code>修改</code></p><p>返回值类型由 <code>HashSet</code> 修改为 <code>MutableList</code></p><p><strong>功能描述</strong></p><blockquote><p>得到 <code>Method</code> 本身数组。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Method</code> 实例。</p><p>在查找条件找不到任何结果的时候将返回空的 <code>MutableList</code>。</p><h3 id="wait-method" tabindex="-1"><a class="header-anchor" href="#wait-method" aria-hidden="true">#</a> wait <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">wait</span><span style="color:#ADBAC7;">(instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?, initiate: </span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.2</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>获得 <code>Method</code> 实例处理类,配合 <code>RemedyPlan</code> 使用。</p></blockquote><p>若有多个 <code>Method</code> 结果只会返回第一个。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>若你设置了 <strong>remedys</strong> 必须使用此方法才能获得结果。</p><p>若你没有设置 <strong>remedys</strong> 此方法将不会被回调。</p></div><h3 id="waitall-method" tabindex="-1"><a class="header-anchor" href="#waitall-method" aria-hidden="true">#</a> waitAll <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">waitAll</span><span style="color:#ADBAC7;">(instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?, initiate: </span><span style="color:#F69D50;">MutableList</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;">&gt;.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><code>v1.2.0</code> <code>修改</code></p><p><code>initiate</code> 类型由 <code>ArrayList</code> 修改为 <code>MutableList</code></p><p><strong>功能描述</strong></p><blockquote><p>获得 <code>Method</code> 实例处理类数组,配合 <code>RemedyPlan</code> 使用。</p></blockquote><p>返回全部查找条件匹配的多个 <code>Method</code> 实例结果。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>若你设置了 <strong>remedys</strong> 必须使用此方法才能获得结果。</p><p>若你没有设置 <strong>remedys</strong> 此方法将不会被回调。</p></div><h3 id="remedys-method-1" tabindex="-1"><a class="header-anchor" href="#remedys-method-1" aria-hidden="true">#</a> remedys <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;">(initiate: </span><span style="color:#F69D50;">RemedyPlan</span><span style="color:#ADBAC7;">.() </span><span style="color:#F47067;">-&gt;</span><span style="color:#ADBAC7;"> Unit): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.80</code> <code>修改</code></p><p>将方法体进行 inline</p><p><strong>功能描述</strong></p><blockquote><p>创建 <code>Method</code> 重查找功能。</p></blockquote><p><strong>功能示例</strong></p><p>当你遇到一种 <code>Method</code> 可能存在不同形式的存在时,可以使用 <code>RemedyPlan</code> 重新查找它,而没有必要使用 <code>onNoSuchMethod</code> 捕获异常二次查找 <code>Method</code>。</p><p>若第一次查找失败了,你还可以在这里继续添加此方法体直到成功为止。</p><blockquote><p>示例如下</p></blockquote><div class="language-kotlin line-numbers-mode" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}.</span><span style="color:#DCBDFB;">remedys</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">method</span><span style="color:#ADBAC7;"> {</span></span>
<span class="line"><span style="color:#ADBAC7;"> </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;"> }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="onnosuchmethod-method-1" tabindex="-1"><a class="header-anchor" href="#onnosuchmethod-method-1" aria-hidden="true">#</a> onNoSuchMethod <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onNoSuchMethod</span><span style="color:#ADBAC7;">(result: (</span><span style="color:#F69D50;">Throwable</span><span style="color:#ADBAC7;">) -&gt; </span><span style="color:#F69D50;">Unit</span><span style="color:#ADBAC7;">): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0</code> <code>添加</code></p><p><code>v1.0.80</code> <code>修改</code></p><p>将方法体进行 inline</p><p><strong>功能描述</strong></p><blockquote><p>监听找不到 <code>Method</code> 时。</p></blockquote><p>只会返回第一次的错误信息,不会返回 <code>RemedyPlan</code> 的错误信息。</p><h3 id="ignored-method" tabindex="-1"><a class="header-anchor" href="#ignored-method" aria-hidden="true">#</a> ignored <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">ignored</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Result</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>忽略异常并停止打印任何错误日志。</p></blockquote><p>若 <code>MemberBaseFinder.MemberHookerManager.isNotIgnoredNoSuchMemberFailure</code> 为 <code>false</code> 则自动忽略。</p><div class="custom-container warning"><p class="custom-container-title">注意</p><p>此时若要监听异常结果,你需要手动实现 <strong>onNoSuchMethod</strong> 方法。</p></div><h3 class="deprecated">ignoredError - method</h3><p><strong>变更记录</strong></p><p><code>v1.0.3</code> <code>新增</code></p><p><code>v1.1.0</code> <code>作废</code></p><p>请迁移到新方法 <code>ignored()</code></p><h3 id="instance-class" tabindex="-1"><a class="header-anchor" href="#instance-class" aria-hidden="true">#</a> Instance <span class="symbol">- class</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inner</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Instance</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> instance: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?, </span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> method: </span><span style="color:#F69D50;">Method</span><span style="color:#ADBAC7;">?)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.2</code> <code>新增</code></p><p><code>v1.1.0</code> <code>修改</code></p><p>新增 <code>method</code> 参数</p><p><strong>功能描述</strong></p><blockquote><p><code>Method</code> 实例处理类。</p></blockquote><h4 id="original-method" tabindex="-1"><a class="header-anchor" href="#original-method" aria-hidden="true">#</a> original <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">original</span><span style="color:#ADBAC7;">(): </span><span style="color:#F69D50;">Instance</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>标识需要调用当前 <code>Method</code> 未经 Hook 的原始方法。</p></blockquote><p>若当前 <code>Method</code> 并未 Hook 则会使用原始的 <code>Method.invoke</code> 方法调用。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>你只能在 (Xposed) 宿主环境中使用此功能。</p></div><h4 id="call-method" tabindex="-1"><a class="header-anchor" href="#call-method" aria-hidden="true">#</a> call <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">call</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.2</code> <code>新增</code></p><p><code>v1.1.6</code> <code>修改</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>功能描述</strong></p><blockquote><p>执行 <code>Method</code>,不指定返回值类型。</p></blockquote><h4 id="invoke-method" tabindex="-1"><a class="header-anchor" href="#invoke-method" aria-hidden="true">#</a> invoke <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">invoke</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.2</code> <code>新增</code></p><p><code>v1.1.6</code> <code>修改</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>功能描述</strong></p><blockquote><p>执行 <code>Method</code>,指定 <code>T</code> 返回值类型。</p></blockquote><h4 id="byte-method" tabindex="-1"><a class="header-anchor" href="#byte-method" aria-hidden="true">#</a> byte <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">byte</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Byte</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.68</code> <code>新增</code></p><p><code>v1.1.6</code> <code>修改</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>功能描述</strong></p><blockquote><p>执行 <code>Method</code>,指定 Byte 返回值类型。</p></blockquote><h4 id="int-method" tabindex="-1"><a class="header-anchor" href="#int-method" aria-hidden="true">#</a> int <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">int</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.65</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>callInt</code></s> 为 <code>int</code></p><p><code>v1.1.6</code> <code>修改</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>功能描述</strong></p><blockquote><p>执行 <code>Method</code>,指定 Int 返回值类型。</p></blockquote><h4 id="long-method" tabindex="-1"><a class="header-anchor" href="#long-method" aria-hidden="true">#</a> long <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">long</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Long</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.65</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>callLong</code></s> 为 <code>long</code></p><p><code>v1.1.6</code> <code>修改</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>功能描述</strong></p><blockquote><p>执行 <code>Method</code>,指定 Long 返回值类型。</p></blockquote><h4 id="short-method" tabindex="-1"><a class="header-anchor" href="#short-method" aria-hidden="true">#</a> short <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">short</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Short</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.65</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>callShort</code></s> 为 <code>short</code></p><p><code>v1.1.6</code> <code>修改</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>功能描述</strong></p><blockquote><p>执行 <code>Method</code>,指定 Short 返回值类型。</p></blockquote><h4 id="double-method" tabindex="-1"><a class="header-anchor" href="#double-method" aria-hidden="true">#</a> double <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">double</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Double</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.65</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>callDouble</code></s> 为 <code>double</code></p><p><code>v1.1.6</code> <code>修改</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>功能描述</strong></p><blockquote><p>执行 <code>Method</code>,指定 Double 返回值类型。</p></blockquote><h4 id="float-method" tabindex="-1"><a class="header-anchor" href="#float-method" aria-hidden="true">#</a> float <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">float</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Float</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.65</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>callFloat</code></s> 为 <code>float</code></p><p><code>v1.1.6</code> <code>修改</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>功能描述</strong></p><blockquote><p>执行 <code>Method</code>,指定 Float 返回值类型。</p></blockquote><h4 id="string-method" tabindex="-1"><a class="header-anchor" href="#string-method" aria-hidden="true">#</a> string <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">string</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.65</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>callString</code></s> 为 <code>string</code></p><p><code>v1.1.6</code> <code>修改</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>功能描述</strong></p><blockquote><p>执行 <code>Method</code>,指定 String 返回值类型。</p></blockquote><h4 id="char-method" tabindex="-1"><a class="header-anchor" href="#char-method" aria-hidden="true">#</a> char <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">char</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Char</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.68</code> <code>新增</code></p><p><code>v1.1.6</code> <code>修改</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>功能描述</strong></p><blockquote><p>执行 <code>Method</code>,指定 Char 返回值类型。</p></blockquote><h4 id="boolean-method" tabindex="-1"><a class="header-anchor" href="#boolean-method" aria-hidden="true">#</a> boolean <span class="symbol">- method</span></h4><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">boolean</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.65</code> <code>新增</code></p><p><code>v1.0.68</code> <code>修改</code></p><p>修改 <s><code>callBoolean</code></s> 为 <code>boolean</code></p><p><code>v1.1.6</code> <code>修改</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>功能描述</strong></p><blockquote><p>执行 <code>Method</code>,指定 Boolean 返回值类型。</p></blockquote><h3 id="array-method" tabindex="-1"><a class="header-anchor" href="#array-method" aria-hidden="true">#</a> array <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">array</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">Array</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.68</code> <code>新增</code></p><p><code>v1.1.6</code> <code>修改</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>功能描述</strong></p><blockquote><p>执行 <code>Method</code>,指定 Array 返回值类型。</p></blockquote><h3 id="list-method" tabindex="-1"><a class="header-anchor" href="#list-method" aria-hidden="true">#</a> list <span class="symbol">- method</span></h3><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">inline</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> &lt;</span><span style="color:#F69D50;">reified</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt; </span><span style="color:#DCBDFB;">list</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> args: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?): </span><span style="color:#F69D50;">List</span><span style="color:#ADBAC7;">&lt;</span><span style="color:#F69D50;">T</span><span style="color:#ADBAC7;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.0.68</code> <code>新增</code></p><p><code>v1.1.6</code> <code>修改</code></p><p>修改参数命名 <code>param</code> 为 <code>args</code></p><p><strong>功能描述</strong></p><blockquote><p>执行 <code>Method</code>,指定 List 返回值类型。</p></blockquote>`,469),l=[p];function c(t,d){return o(),e("div",null,l)}const i=s(n,[["render",c],["__file","MethodFinder.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-a4aa4d00","path":"/en/api/public/com/highcapable/yukihookapi/hook/core/finder/members/MethodFinder.html","title":"MethodFinder - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"name - field","slug":"name-field","link":"#name-field","children":[]},{"level":2,"title":"paramCount - field","slug":"paramcount-field","link":"#paramcount-field","children":[]},{"level":2,"title":"returnType - field","slug":"returntype-field","link":"#returntype-field","children":[]},{"level":2,"title":"modifiers - method","slug":"modifiers-method","link":"#modifiers-method","children":[]},{"level":2,"title":"emptyParam - method","slug":"emptyparam-method","link":"#emptyparam-method","children":[]},{"level":2,"title":"param - method","slug":"param-method","link":"#param-method","children":[]},{"level":2,"title":"param - method","slug":"param-method-1","link":"#param-method-1","children":[]},{"level":2,"title":"order - method","slug":"order-method","link":"#order-method","children":[]},{"level":2,"title":"name - method","slug":"name-method","link":"#name-method","children":[]},{"level":2,"title":"name - method","slug":"name-method-1","link":"#name-method-1","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method","link":"#paramcount-method","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method-1","link":"#paramcount-method-1","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method-2","link":"#paramcount-method-2","children":[]},{"level":2,"title":"returnType - method","slug":"returntype-method","link":"#returntype-method","children":[]},{"level":2,"title":"returnType - method","slug":"returntype-method-1","link":"#returntype-method-1","children":[]},{"level":2,"title":"superClass - method","slug":"superclass-method","link":"#superclass-method","children":[]},{"level":2,"title":"RemedyPlan - class","slug":"remedyplan-class","link":"#remedyplan-class","children":[{"level":3,"title":"method - method","slug":"method-method","link":"#method-method","children":[]},{"level":3,"title":"Result - class","slug":"result-class","link":"#result-class","children":[]}]},{"level":2,"title":"Process - class","slug":"process-class","link":"#process-class","children":[{"level":3,"title":"result - method","slug":"result-method","link":"#result-method","children":[]},{"level":3,"title":"all - method","slug":"all-method","link":"#all-method","children":[]},{"level":3,"title":"remedys - method","slug":"remedys-method","link":"#remedys-method","children":[]},{"level":3,"title":"onNoSuchMethod - method","slug":"onnosuchmethod-method","link":"#onnosuchmethod-method","children":[]}]},{"level":2,"title":"Result - class","slug":"result-class-1","link":"#result-class-1","children":[{"level":3,"title":"result - method","slug":"result-method-1","link":"#result-method-1","children":[]},{"level":3,"title":"get - method","slug":"get-method","link":"#get-method","children":[]},{"level":3,"title":"all - method","slug":"all-method-1","link":"#all-method-1","children":[]},{"level":3,"title":"give - method","slug":"give-method","link":"#give-method","children":[]},{"level":3,"title":"giveAll - method","slug":"giveall-method","link":"#giveall-method","children":[]},{"level":3,"title":"wait - method","slug":"wait-method","link":"#wait-method","children":[]},{"level":3,"title":"waitAll - method","slug":"waitall-method","link":"#waitall-method","children":[]},{"level":3,"title":"remedys - method","slug":"remedys-method-1","link":"#remedys-method-1","children":[]},{"level":3,"title":"onNoSuchMethod - method","slug":"onnosuchmethod-method-1","link":"#onnosuchmethod-method-1","children":[]},{"level":3,"title":"ignored - method","slug":"ignored-method","link":"#ignored-method","children":[]},{"level":3,"title":"Instance - class","slug":"instance-class","link":"#instance-class","children":[]},{"level":3,"title":"array - method","slug":"array-method","link":"#array-method","children":[]},{"level":3,"title":"list - method","slug":"list-method","link":"#list-method","children":[]}]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":9}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/core/finder/members/MethodFinder.md"}');export{e as data};

View File

@@ -0,0 +1,13 @@
import{_ as a,o as s,c as e,a as o}from"./app-BpUB8-Q8.js";const n={},t=o(`<div class="custom-container warning"><p class="custom-container-title">Notice</p><p>Due to maintenance costs, the <code>YukiHookAPI</code> will no longer update this document from version <code>1.3.0</code> and switch to the API document automatically generated by the Dokka plugin in version <code>2.0.0</code>.</p></div><div class="custom-container warning"><p class="custom-container-title">Notice</p><p>The English translation of this page has not been completed, you are welcome to contribute translations to us.</p><p>You can use the <strong>Chrome Translation Plugin</strong> to translate entire pages for reference.</p></div><h1 id="methodrules-class" tabindex="-1"><a class="header-anchor" href="#methodrules-class" aria-hidden="true">#</a> MethodRules <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">MethodRules</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> rulesData: </span><span style="color:#F69D50;">MethodRulesData</span><span style="color:#ADBAC7;">) : </span><span style="color:#F69D50;">BaseRules</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p><code>Method</code> 查找条件实现类。</p></blockquote><h2 id="name-field" tabindex="-1"><a class="header-anchor" href="#name-field" aria-hidden="true">#</a> name <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 名称。</p></blockquote><h2 id="paramcount-field" tabindex="-1"><a class="header-anchor" href="#paramcount-field" aria-hidden="true">#</a> paramCount <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> paramCount: </span><span style="color:#F69D50;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 参数个数。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此变量指定参数个数。</p><p>若参数个数小于零则忽略并使用 <code>param</code>。</p><h2 id="returntype-field" tabindex="-1"><a class="header-anchor" href="#returntype-field" aria-hidden="true">#</a> returnType <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> returnType: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 返回值。</p></blockquote><p>可不填写返回值。</p><h2 id="modifiers-method" tabindex="-1"><a class="header-anchor" href="#modifiers-method" aria-hidden="true">#</a> modifiers <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">modifiers</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ModifierConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 标识符筛选条件。</p></blockquote><p>可不设置筛选条件。</p><h2 id="emptyparam-method" tabindex="-1"><a class="header-anchor" href="#emptyparam-method" aria-hidden="true">#</a> emptyParam <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">emptyParam</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 空参数、无参数。</p></blockquote><h2 id="param-method" tabindex="-1"><a class="header-anchor" href="#param-method" aria-hidden="true">#</a> param <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> paramType: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 参数。</p></blockquote><p>如果同时使用了 <code>paramCount</code> 则 <code>paramType</code> 的数量必须与 <code>paramCount</code> 完全匹配。</p><p>如果 <code>Method</code> 中存在一些无意义又很长的类型,你可以使用 <code>VagueType</code> 来替代它。</p><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>无参 <strong>Method</strong> 请使用 <strong>emptyParam</strong> 设置查找条件。</p><p>有参 <strong>Method</strong> 必须使用此方法设定参数或使用 <strong>paramCount</strong> 指定个数。</p></div><h2 id="param-method-1" tabindex="-1"><a class="header-anchor" href="#param-method-1" aria-hidden="true">#</a> param <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ObjectsConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.5</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 参数条件。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">Pay Attention</p><p>无参 <strong>Method</strong> 请使用 <strong>emptyParam</strong> 设置查找条件。</p><p>有参 <strong>Method</strong> 必须使用此方法设定参数或使用 <strong>paramCount</strong> 指定个数。</p></div><h2 id="name-method" tabindex="-1"><a class="header-anchor" href="#name-method" aria-hidden="true">#</a> name <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">name</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">NameConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 名称条件。</p></blockquote><h2 id="paramcount-method" tabindex="-1"><a class="header-anchor" href="#paramcount-method" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(numRange: </span><span style="color:#F69D50;">IntRange</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 参数个数范围。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数范围。</p><h2 id="paramcount-method-1" tabindex="-1"><a class="header-anchor" href="#paramcount-method-1" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">CountConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.0</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 参数个数条件。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数条件。</p><h2 id="returntype-method" tabindex="-1"><a class="header-anchor" href="#returntype-method" aria-hidden="true">#</a> returnType <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">returnType</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ObjectConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>Change Records</strong></p><p><code>v1.1.5</code> <code>added</code></p><p><strong>Function Illustrate</strong></p><blockquote><p>设置 <code>Method</code> 返回值条件。</p></blockquote><p>可不填写返回值。</p>`,85),p=[t];function c(d,l){return s(),e("div",null,p)}const i=a(n,[["render",c],["__file","MethodRules.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-64827680","path":"/en/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/MethodRules.html","title":"MethodRules - class","lang":"en-US","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"name - field","slug":"name-field","link":"#name-field","children":[]},{"level":2,"title":"paramCount - field","slug":"paramcount-field","link":"#paramcount-field","children":[]},{"level":2,"title":"returnType - field","slug":"returntype-field","link":"#returntype-field","children":[]},{"level":2,"title":"modifiers - method","slug":"modifiers-method","link":"#modifiers-method","children":[]},{"level":2,"title":"emptyParam - method","slug":"emptyparam-method","link":"#emptyparam-method","children":[]},{"level":2,"title":"param - method","slug":"param-method","link":"#param-method","children":[]},{"level":2,"title":"param - method","slug":"param-method-1","link":"#param-method-1","children":[]},{"level":2,"title":"name - method","slug":"name-method","link":"#name-method","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method","link":"#paramcount-method","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method-1","link":"#paramcount-method-1","children":[]},{"level":2,"title":"returnType - method","slug":"returntype-method","link":"#returntype-method","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":4}]},"filePathRelative":"en/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/MethodRules.md"}');export{e as data};

View File

@@ -0,0 +1,13 @@
import{_ as s,o as a,c as o,a as e}from"./app-BpUB8-Q8.js";const n={},p=e(`<div class="custom-container warning"><p class="custom-container-title">注意</p><p>由于维护成本,<code>YukiHookAPI</code> 从 <code>1.3.0</code> 版本开始将不再会对此文档进行更新且在 <code>2.0.0</code> 版本切换为 Dokka 插件自动生成的 API 文档。</p></div><h1 id="methodrules-class" tabindex="-1"><a class="header-anchor" href="#methodrules-class" aria-hidden="true">#</a> MethodRules <span class="symbol">- class</span></h1><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">MethodRules</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">private</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> rulesData: </span><span style="color:#F69D50;">MethodRulesData</span><span style="color:#ADBAC7;">) : </span><span style="color:#F69D50;">BaseRules</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p><code>Method</code> 查找条件实现类。</p></blockquote><h2 id="name-field" tabindex="-1"><a class="header-anchor" href="#name-field" aria-hidden="true">#</a> name <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> name: </span><span style="color:#F69D50;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 名称。</p></blockquote><h2 id="paramcount-field" tabindex="-1"><a class="header-anchor" href="#paramcount-field" aria-hidden="true">#</a> paramCount <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> paramCount: </span><span style="color:#F69D50;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 参数个数。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此变量指定参数个数。</p><p>若参数个数小于零则忽略并使用 <code>param</code>。</p><h2 id="returntype-field" tabindex="-1"><a class="header-anchor" href="#returntype-field" aria-hidden="true">#</a> returnType <span class="symbol">- field</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> returnType: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">?</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 返回值。</p></blockquote><p>可不填写返回值。</p><h2 id="modifiers-method" tabindex="-1"><a class="header-anchor" href="#modifiers-method" aria-hidden="true">#</a> modifiers <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">modifiers</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ModifierConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 标识符筛选条件。</p></blockquote><p>可不设置筛选条件。</p><h2 id="emptyparam-method" tabindex="-1"><a class="header-anchor" href="#emptyparam-method" aria-hidden="true">#</a> emptyParam <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">emptyParam</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 空参数、无参数。</p></blockquote><h2 id="param-method" tabindex="-1"><a class="header-anchor" href="#param-method" aria-hidden="true">#</a> param <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> paramType: </span><span style="color:#F69D50;">Any</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 参数。</p></blockquote><p>如果同时使用了 <code>paramCount</code> 则 <code>paramType</code> 的数量必须与 <code>paramCount</code> 完全匹配。</p><p>如果 <code>Method</code> 中存在一些无意义又很长的类型,你可以使用 <code>VagueType</code> 来替代它。</p><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>无参 <strong>Method</strong> 请使用 <strong>emptyParam</strong> 设置查找条件。</p><p>有参 <strong>Method</strong> 必须使用此方法设定参数或使用 <strong>paramCount</strong> 指定个数。</p></div><h2 id="param-method-1" tabindex="-1"><a class="header-anchor" href="#param-method-1" aria-hidden="true">#</a> param <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">param</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ObjectsConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.5</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 参数条件。</p></blockquote><div class="custom-container danger"><p class="custom-container-title">特别注意</p><p>无参 <strong>Method</strong> 请使用 <strong>emptyParam</strong> 设置查找条件。</p><p>有参 <strong>Method</strong> 必须使用此方法设定参数或使用 <strong>paramCount</strong> 指定个数。</p></div><h2 id="name-method" tabindex="-1"><a class="header-anchor" href="#name-method" aria-hidden="true">#</a> name <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">name</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">NameConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 名称条件。</p></blockquote><h2 id="paramcount-method" tabindex="-1"><a class="header-anchor" href="#paramcount-method" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(numRange: </span><span style="color:#F69D50;">IntRange</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 参数个数范围。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数范围。</p><h2 id="paramcount-method-1" tabindex="-1"><a class="header-anchor" href="#paramcount-method-1" aria-hidden="true">#</a> paramCount <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">paramCount</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">CountConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.0</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 参数个数条件。</p></blockquote><p>你可以不使用 <code>param</code> 指定参数类型而是仅使用此方法指定参数个数条件。</p><h2 id="returntype-method" tabindex="-1"><a class="header-anchor" href="#returntype-method" aria-hidden="true">#</a> returnType <span class="symbol">- method</span></h2><div class="language-kotlin" data-ext="kt"><pre class="shiki github-dark-dimmed" style="background-color:#22272e;" tabindex="0"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">returnType</span><span style="color:#ADBAC7;">(conditions: </span><span style="color:#F69D50;">ObjectConditions</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>变更记录</strong></p><p><code>v1.1.5</code> <code>新增</code></p><p><strong>功能描述</strong></p><blockquote><p>设置 <code>Method</code> 返回值条件。</p></blockquote><p>可不填写返回值。</p>`,84),t=[p];function c(l,d){return a(),o("div",null,t)}const i=s(n,[["render",c],["__file","MethodRules.html.vue"]]);export{i as default};

View File

@@ -0,0 +1 @@
const e=JSON.parse('{"key":"v-5388621e","path":"/zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/MethodRules.html","title":"MethodRules - class","lang":"zh-CN","frontmatter":{"pageClass":"code-page"},"headers":[{"level":2,"title":"name - field","slug":"name-field","link":"#name-field","children":[]},{"level":2,"title":"paramCount - field","slug":"paramcount-field","link":"#paramcount-field","children":[]},{"level":2,"title":"returnType - field","slug":"returntype-field","link":"#returntype-field","children":[]},{"level":2,"title":"modifiers - method","slug":"modifiers-method","link":"#modifiers-method","children":[]},{"level":2,"title":"emptyParam - method","slug":"emptyparam-method","link":"#emptyparam-method","children":[]},{"level":2,"title":"param - method","slug":"param-method","link":"#param-method","children":[]},{"level":2,"title":"param - method","slug":"param-method-1","link":"#param-method-1","children":[]},{"level":2,"title":"name - method","slug":"name-method","link":"#name-method","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method","link":"#paramcount-method","children":[]},{"level":2,"title":"paramCount - method","slug":"paramcount-method-1","link":"#paramcount-method-1","children":[]},{"level":2,"title":"returnType - method","slug":"returntype-method","link":"#returntype-method","children":[]}],"git":{"updatedTime":1750064706000,"contributors":[{"name":"fankesyooni","email":"qzmmcn@163.com","commits":5}]},"filePathRelative":"zh-cn/api/public/com/highcapable/yukihookapi/hook/core/finder/classes/rules/MethodRules.md"}');export{e as data};

Some files were not shown because too many files have changed in this diff Show More