mirror of
https://github.com/mCaptcha/mCaptcha.git
synced 2025-06-12 09:06:47 +00:00
Deploying to gh-pages from @ 527724ecda2d8fcfaf767890344aae965c73d777 🚀
This commit is contained in:
parent
aa1fc299f5
commit
f437f72db4
File diff suppressed because one or more lines are too long
@ -1,5 +0,0 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `fetched` fn in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, fetched"><title>guard::api::v1::mcaptcha::stats::fetched - Rust</title><link rel="stylesheet" type="text/css" href="../../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../../down-arrow.svg");}</style></head><body class="rustdoc fn"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../../rust-logo.png' alt='logo'></div></a><div class="sidebar-elems"><p class="location"><a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">mcaptcha</a>::<wbr><a href="index.html">stats</a></p><div id="sidebar-vars" data-name="fetched" data-ty="fn" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">mcaptcha</a>::<wbr><a href="index.html">stats</a>::<wbr><a class="fn" href="">fetched</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/mcaptcha/stats.rs.html#20-28" title="goto source code">[src]</a></span></h1><pre class="rust fn">pub async fn fetched(key: &<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>, db: &PgPool)</pre></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<script src="../../../../../main.js"></script><script defer src="../../../../../search-index.js"></script></body></html>
|
6
guard/api/v1/mcaptcha/stats/fn.record_confirm.html
Normal file
6
guard/api/v1/mcaptcha/stats/fn.record_confirm.html
Normal file
@ -0,0 +1,6 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `record_confirm` fn in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, record_confirm"><title>guard::api::v1::mcaptcha::stats::record_confirm - Rust</title><link rel="stylesheet" type="text/css" href="../../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../../down-arrow.svg");}</style></head><body class="rustdoc fn"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../../rust-logo.png' alt='logo'></div></a><div class="sidebar-elems"><p class="location"><a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">mcaptcha</a>::<wbr><a href="index.html">stats</a></p><div id="sidebar-vars" data-name="record_confirm" data-ty="fn" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">mcaptcha</a>::<wbr><a href="index.html">stats</a>::<wbr><a class="fn" href="">record_confirm</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/mcaptcha/stats.rs.html#46-54" title="goto source code">[src]</a></span></h1><pre class="rust fn">pub async fn record_confirm(key: &<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>, db: &PgPool)</pre><div class="docblock"><p>record PoWConfig confirms</p>
|
||||
</div></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<script src="../../../../../main.js"></script><script defer src="../../../../../search-index.js"></script></body></html>
|
6
guard/api/v1/mcaptcha/stats/fn.record_fetch.html
Normal file
6
guard/api/v1/mcaptcha/stats/fn.record_fetch.html
Normal file
@ -0,0 +1,6 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `record_fetch` fn in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, record_fetch"><title>guard::api::v1::mcaptcha::stats::record_fetch - Rust</title><link rel="stylesheet" type="text/css" href="../../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../../down-arrow.svg");}</style></head><body class="rustdoc fn"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../../rust-logo.png' alt='logo'></div></a><div class="sidebar-elems"><p class="location"><a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">mcaptcha</a>::<wbr><a href="index.html">stats</a></p><div id="sidebar-vars" data-name="record_fetch" data-ty="fn" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">mcaptcha</a>::<wbr><a href="index.html">stats</a>::<wbr><a class="fn" href="">record_fetch</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/mcaptcha/stats.rs.html#22-30" title="goto source code">[src]</a></span></h1><pre class="rust fn">pub async fn record_fetch(key: &<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>, db: &PgPool)</pre><div class="docblock"><p>record PoWConfig fetches</p>
|
||||
</div></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<script src="../../../../../main.js"></script><script defer src="../../../../../search-index.js"></script></body></html>
|
6
guard/api/v1/mcaptcha/stats/fn.record_solve.html
Normal file
6
guard/api/v1/mcaptcha/stats/fn.record_solve.html
Normal file
@ -0,0 +1,6 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `record_solve` fn in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, record_solve"><title>guard::api::v1::mcaptcha::stats::record_solve - Rust</title><link rel="stylesheet" type="text/css" href="../../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../../down-arrow.svg");}</style></head><body class="rustdoc fn"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../../rust-logo.png' alt='logo'></div></a><div class="sidebar-elems"><p class="location"><a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">mcaptcha</a>::<wbr><a href="index.html">stats</a></p><div id="sidebar-vars" data-name="record_solve" data-ty="fn" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">mcaptcha</a>::<wbr><a href="index.html">stats</a>::<wbr><a class="fn" href="">record_solve</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/mcaptcha/stats.rs.html#34-42" title="goto source code">[src]</a></span></h1><pre class="rust fn">pub async fn record_solve(key: &<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>, db: &PgPool)</pre><div class="docblock"><p>record PoWConfig solves</p>
|
||||
</div></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<script src="../../../../../main.js"></script><script defer src="../../../../../search-index.js"></script></body></html>
|
@ -1,6 +1,9 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `stats` mod in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, stats"><title>guard::api::v1::mcaptcha::stats - Rust</title><link rel="stylesheet" type="text/css" href="../../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../../rust-logo.png' alt='logo'></div></a><p class="location">Module stats</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#functions">Functions</a></li></ul></div><p class="location"><a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">mcaptcha</a></p><div id="sidebar-vars" data-name="stats" data-ty="mod" data-relpath="../"></div><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">mcaptcha</a>::<wbr><a class="mod" href="">stats</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/mcaptcha/stats.rs.html#18-28" title="goto source code">[src]</a></span></h1><h2 id="functions" class="section-header"><a href="#functions">Functions</a></h2>
|
||||
<table><tr class="module-item"><td><a class="fn" href="fn.fetched.html" title="guard::api::v1::mcaptcha::stats::fetched fn">fetched</a></td><td class="docblock-short"></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">mcaptcha</a>::<wbr><a class="mod" href="">stats</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/mcaptcha/stats.rs.html#18-54" title="goto source code">[src]</a></span></h1><h2 id="functions" class="section-header"><a href="#functions">Functions</a></h2>
|
||||
<table><tr class="module-item"><td><a class="fn" href="fn.record_confirm.html" title="guard::api::v1::mcaptcha::stats::record_confirm fn">record_confirm</a></td><td class="docblock-short"><p>record PoWConfig confirms</p>
|
||||
</td></tr><tr class="module-item"><td><a class="fn" href="fn.record_fetch.html" title="guard::api::v1::mcaptcha::stats::record_fetch fn">record_fetch</a></td><td class="docblock-short"><p>record PoWConfig fetches</p>
|
||||
</td></tr><tr class="module-item"><td><a class="fn" href="fn.record_solve.html" title="guard::api::v1::mcaptcha::stats::record_solve fn">record_solve</a></td><td class="docblock-short"><p>record PoWConfig solves</p>
|
||||
</td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<script src="../../../../../main.js"></script><script defer src="../../../../../search-index.js"></script></body></html>
|
@ -1 +1 @@
|
||||
initSidebarItems({"fn":[["fetched",""]]});
|
||||
initSidebarItems({"fn":[["record_confirm","record PoWConfig confirms"],["record_fetch","record PoWConfig fetches"],["record_solve","record PoWConfig solves"]]});
|
@ -1,5 +1,5 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `services` fn in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, services"><title>guard::api::v1::pow::services - Rust</title><link rel="stylesheet" type="text/css" href="../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../down-arrow.svg");}</style></head><body class="rustdoc fn"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../rust-logo.png' alt='logo'></div></a><div class="sidebar-elems"><p class="location"><a href="../../../index.html">guard</a>::<wbr><a href="../../index.html">api</a>::<wbr><a href="../index.html">v1</a>::<wbr><a href="index.html">pow</a></p><div id="sidebar-vars" data-name="services" data-ty="fn" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../settings.html"><img src="../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../../index.html">guard</a>::<wbr><a href="../../index.html">api</a>::<wbr><a href="../index.html">v1</a>::<wbr><a href="index.html">pow</a>::<wbr><a class="fn" href="">services</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../src/guard/api/v1/pow/mod.rs.html#28-52" title="goto source code">[src]</a></span></h1><pre class="rust fn">pub fn services(cfg: &mut ServiceConfig)</pre></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../" data-current-crate="guard"></div>
|
||||
<a id="settings-menu" href="../../../../settings.html"><img src="../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../../index.html">guard</a>::<wbr><a href="../../index.html">api</a>::<wbr><a href="../index.html">v1</a>::<wbr><a href="index.html">pow</a>::<wbr><a class="fn" href="">services</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../src/guard/api/v1/pow/mod.rs.html#29-53" title="goto source code">[src]</a></span></h1><pre class="rust fn">pub fn services(cfg: &mut ServiceConfig)</pre></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../" data-current-crate="guard"></div>
|
||||
<script src="../../../../main.js"></script><script defer src="../../../../search-index.js"></script></body></html>
|
@ -1,5 +1,6 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `get_config` fn in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, get_config"><title>guard::api::v1::pow::get_config::get_config - Rust</title><link rel="stylesheet" type="text/css" href="../../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../../down-arrow.svg");}</style></head><body class="rustdoc fn"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../../rust-logo.png' alt='logo'></div></a><div class="sidebar-elems"><p class="location"><a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">get_config</a></p><div id="sidebar-vars" data-name="get_config" data-ty="fn" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">get_config</a>::<wbr><a class="fn" href="">get_config</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/get_config.rs.html#42-80" title="goto source code">[src]</a></span></h1><pre class="rust fn">pub async fn get_config(<br> payload: Json<<a class="struct" href="../../../../../guard/api/v1/pow/get_config/struct.GetConfigPayload.html" title="struct guard::api::v1::pow::get_config::GetConfigPayload">GetConfigPayload</a>>, <br> data: Data<<a class="struct" href="../../../../../guard/data/struct.Data.html" title="struct guard::data::Data">Data</a>><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><impl Responder, <a class="enum" href="../../../../../guard/errors/enum.ServiceError.html" title="enum guard::errors::ServiceError">ServiceError</a>></pre></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">get_config</a>::<wbr><a class="fn" href="">get_config</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/get_config.rs.html#43-81" title="goto source code">[src]</a></span></h1><pre class="rust fn">pub async fn get_config(<br> payload: Json<<a class="struct" href="../../../../../guard/api/v1/pow/get_config/struct.GetConfigPayload.html" title="struct guard::api::v1::pow::get_config::GetConfigPayload">GetConfigPayload</a>>, <br> data: Data<<a class="struct" href="../../../../../guard/data/struct.Data.html" title="struct guard::data::Data">Data</a>><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><impl Responder, <a class="enum" href="../../../../../guard/errors/enum.ServiceError.html" title="enum guard::errors::ServiceError">ServiceError</a>></pre><div class="docblock"><p>get PoW configuration for an mcaptcha key</p>
|
||||
</div></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<script src="../../../../../main.js"></script><script defer src="../../../../../search-index.js"></script></body></html>
|
@ -1,5 +1,8 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `init_mcaptcha` fn in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, init_mcaptcha"><title>guard::api::v1::pow::get_config::init_mcaptcha - Rust</title><link rel="stylesheet" type="text/css" href="../../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../../down-arrow.svg");}</style></head><body class="rustdoc fn"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../../rust-logo.png' alt='logo'></div></a><div class="sidebar-elems"><p class="location"><a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">get_config</a></p><div id="sidebar-vars" data-name="init_mcaptcha" data-ty="fn" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">get_config</a>::<wbr><a class="fn" href="">init_mcaptcha</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/get_config.rs.html#82-138" title="goto source code">[src]</a></span></h1><pre class="rust fn">async fn init_mcaptcha(data: &<a class="struct" href="../../../../../guard/data/struct.Data.html" title="struct guard::data::Data">Data</a>, key: &<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../../../../guard/errors/enum.ServiceError.html" title="enum guard::errors::ServiceError">ServiceError</a>></pre></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">get_config</a>::<wbr><a class="fn" href="">init_mcaptcha</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/get_config.rs.html#86-142" title="goto source code">[src]</a></span></h1><pre class="rust fn">async fn init_mcaptcha(data: &<a class="struct" href="../../../../../guard/data/struct.Data.html" title="struct guard::data::Data">Data</a>, key: &<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../../../../../guard/errors/enum.ServiceError.html" title="enum guard::errors::ServiceError">ServiceError</a>></pre><div class="docblock"><p>Call this when [MCaptcha][m_captcha::MCaptcha] is not in master.</p>
|
||||
<p>This fn gets mcaptcha config from database, builds [Defense][m_captcha::Defense],
|
||||
creates [MCaptcha][m_captcha::MCaptcha] and adds it to [Master][m_captcha::Defense]</p>
|
||||
</div></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<script src="../../../../../main.js"></script><script defer src="../../../../../search-index.js"></script></body></html>
|
@ -1,7 +1,9 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `get_config` mod in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, get_config"><title>guard::api::v1::pow::get_config - Rust</title><link rel="stylesheet" type="text/css" href="../../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../../rust-logo.png' alt='logo'></div></a><p class="location">Module get_config</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li><li><a href="#functions">Functions</a></li></ul></div><p class="location"><a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a></p><div id="sidebar-vars" data-name="get_config" data-ty="mod" data-relpath="../"></div><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a class="mod" href="">get_config</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/get_config.rs.html#18-183" title="goto source code">[src]</a></span></h1><h2 id="structs" class="section-header"><a href="#structs">Structs</a></h2>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a class="mod" href="">get_config</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/get_config.rs.html#18-187" title="goto source code">[src]</a></span></h1><h2 id="structs" class="section-header"><a href="#structs">Structs</a></h2>
|
||||
<table><tr class="module-item"><td><a class="struct" href="struct.GetConfigPayload.html" title="guard::api::v1::pow::get_config::GetConfigPayload struct">GetConfigPayload</a></td><td class="docblock-short"></td></tr><tr class="module-item"><td><a class="struct" href="struct.PoWConfig.html" title="guard::api::v1::pow::get_config::PoWConfig struct">PoWConfig</a></td><td class="docblock-short"></td></tr></table><h2 id="functions" class="section-header"><a href="#functions">Functions</a></h2>
|
||||
<table><tr class="module-item"><td><a class="fn" href="fn.get_config.html" title="guard::api::v1::pow::get_config::get_config fn">get_config</a></td><td class="docblock-short"></td></tr><tr class="module-item"><td><a class="fn" href="fn.init_mcaptcha.html" title="guard::api::v1::pow::get_config::init_mcaptcha fn">init_mcaptcha</a></td><td class="docblock-short"></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<table><tr class="module-item"><td><a class="fn" href="fn.get_config.html" title="guard::api::v1::pow::get_config::get_config fn">get_config</a></td><td class="docblock-short"><p>get PoW configuration for an mcaptcha key</p>
|
||||
</td></tr><tr class="module-item"><td><a class="fn" href="fn.init_mcaptcha.html" title="guard::api::v1::pow::get_config::init_mcaptcha fn">init_mcaptcha</a></td><td class="docblock-short"><p>Call this when [MCaptcha][m_captcha::MCaptcha] is not in master.</p>
|
||||
</td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<script src="../../../../../main.js"></script><script defer src="../../../../../search-index.js"></script></body></html>
|
@ -1 +1 @@
|
||||
initSidebarItems({"fn":[["get_config",""],["init_mcaptcha",""]],"struct":[["GetConfigPayload",""],["PoWConfig",""]]});
|
||||
initSidebarItems({"fn":[["get_config","get PoW configuration for an mcaptcha key"],["init_mcaptcha","Call this when [MCaptcha][m_captcha::MCaptcha] is not in master."]],"struct":[["GetConfigPayload",""],["PoWConfig",""]]});
|
@ -1,8 +1,10 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `pow` mod in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, pow"><title>guard::api::v1::pow - Rust</title><link rel="stylesheet" type="text/css" href="../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../rust-logo.png' alt='logo'></div></a><p class="location">Module pow</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#reexports">Re-exports</a></li><li><a href="#modules">Modules</a></li><li><a href="#functions">Functions</a></li></ul></div><p class="location"><a href="../../../index.html">guard</a>::<wbr><a href="../../index.html">api</a>::<wbr><a href="../index.html">v1</a></p><div id="sidebar-vars" data-name="pow" data-ty="mod" data-relpath="../"></div><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../settings.html"><img src="../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../../index.html">guard</a>::<wbr><a href="../../index.html">api</a>::<wbr><a href="../index.html">v1</a>::<wbr><a class="mod" href="">pow</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../src/guard/api/v1/pow/mod.rs.html#18-70" title="goto source code">[src]</a></span></h1><h2 id="reexports" class="section-header"><a href="#reexports">Re-exports</a></h2>
|
||||
<a id="settings-menu" href="../../../../settings.html"><img src="../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../../index.html">guard</a>::<wbr><a href="../../index.html">api</a>::<wbr><a href="../index.html">v1</a>::<wbr><a class="mod" href="">pow</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../src/guard/api/v1/pow/mod.rs.html#18-71" title="goto source code">[src]</a></span></h1><h2 id="reexports" class="section-header"><a href="#reexports">Re-exports</a></h2>
|
||||
<table><tr><td><code>pub use super::mcaptcha::duration::<a class="struct" href="../../../../guard/api/v1/mcaptcha/duration/struct.GetDurationResp.html" title="struct guard::api::v1::mcaptcha::duration::GetDurationResp">GetDurationResp</a>;</code></td></tr><tr><td><code>pub use super::mcaptcha::levels::<a class="struct" href="../../../../guard/api/v1/mcaptcha/levels/struct.I32Levels.html" title="struct guard::api::v1::mcaptcha::levels::I32Levels">I32Levels</a>;</code></td></tr></table><h2 id="modules" class="section-header"><a href="#modules">Modules</a></h2>
|
||||
<table><tr class="module-item"><td><a class="mod" href="get_config/index.html" title="guard::api::v1::pow::get_config mod">get_config</a></td><td class="docblock-short"></td></tr><tr class="module-item"><td><a class="mod" href="routes/index.html" title="guard::api::v1::pow::routes mod">routes</a></td><td class="docblock-short"></td></tr><tr class="module-item"><td><a class="mod" href="verify_pow/index.html" title="guard::api::v1::pow::verify_pow mod">verify_pow</a></td><td class="docblock-short"></td></tr><tr class="module-item"><td><a class="mod" href="verify_token/index.html" title="guard::api::v1::pow::verify_token mod">verify_token</a></td><td class="docblock-short"></td></tr></table><h2 id="functions" class="section-header"><a href="#functions">Functions</a></h2>
|
||||
<table><tr class="module-item"><td><a class="mod" href="get_config/index.html" title="guard::api::v1::pow::get_config mod">get_config</a></td><td class="docblock-short"></td></tr><tr class="module-item"><td><a class="mod" href="routes/index.html" title="guard::api::v1::pow::routes mod">routes</a></td><td class="docblock-short"></td></tr><tr class="module-item"><td><a class="mod" href="verify_pow/index.html" title="guard::api::v1::pow::verify_pow mod">verify_pow</a></td><td class="docblock-short"><p>PoW Verification module</p>
|
||||
</td></tr><tr class="module-item"><td><a class="mod" href="verify_token/index.html" title="guard::api::v1::pow::verify_token mod">verify_token</a></td><td class="docblock-short"><p>PoW success token module</p>
|
||||
</td></tr></table><h2 id="functions" class="section-header"><a href="#functions">Functions</a></h2>
|
||||
<table><tr class="module-item"><td><a class="fn" href="fn.services.html" title="guard::api::v1::pow::services fn">services</a></td><td class="docblock-short"></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../" data-current-crate="guard"></div>
|
||||
<script src="../../../../main.js"></script><script defer src="../../../../search-index.js"></script></body></html>
|
@ -1,6 +1,6 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `routes` mod in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, routes"><title>guard::api::v1::pow::routes - Rust</title><link rel="stylesheet" type="text/css" href="../../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../../rust-logo.png' alt='logo'></div></a><p class="location">Module routes</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li></ul></div><p class="location"><a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a></p><div id="sidebar-vars" data-name="routes" data-ty="mod" data-relpath="../"></div><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a class="mod" href="">routes</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/mod.rs.html#54-70" title="goto source code">[src]</a></span></h1><h2 id="structs" class="section-header"><a href="#structs">Structs</a></h2>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a class="mod" href="">routes</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/mod.rs.html#55-71" title="goto source code">[src]</a></span></h1><h2 id="structs" class="section-header"><a href="#structs">Structs</a></h2>
|
||||
<table><tr class="module-item"><td><a class="struct" href="struct.PoW.html" title="guard::api::v1::pow::routes::PoW struct">PoW</a></td><td class="docblock-short"></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<script src="../../../../../main.js"></script><script defer src="../../../../../search-index.js"></script></body></html>
|
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
initSidebarItems({"fn":[["services",""]],"mod":[["get_config",""],["routes",""],["verify_pow",""],["verify_token",""]]});
|
||||
initSidebarItems({"fn":[["services",""]],"mod":[["get_config",""],["routes",""],["verify_pow","PoW Verification module"],["verify_token","PoW success token module"]]});
|
@ -1,5 +1,7 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `verify_pow` fn in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, verify_pow"><title>guard::api::v1::pow::verify_pow::verify_pow - Rust</title><link rel="stylesheet" type="text/css" href="../../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../../down-arrow.svg");}</style></head><body class="rustdoc fn"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../../rust-logo.png' alt='logo'></div></a><div class="sidebar-elems"><p class="location"><a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">verify_pow</a></p><div id="sidebar-vars" data-name="verify_pow" data-ty="fn" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">verify_pow</a>::<wbr><a class="fn" href="">verify_pow</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#32-39" title="goto source code">[src]</a></span></h1><pre class="rust fn">pub async fn verify_pow(<br> payload: Json<Work>, <br> data: Data<<a class="struct" href="../../../../../guard/data/struct.Data.html" title="struct guard::data::Data">Data</a>><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><impl Responder, <a class="enum" href="../../../../../guard/errors/enum.ServiceError.html" title="enum guard::errors::ServiceError">ServiceError</a>></pre></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">verify_pow</a>::<wbr><a class="fn" href="">verify_pow</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#38-47" title="goto source code">[src]</a></span></h1><pre class="rust fn">pub async fn verify_pow(<br> payload: Json<Work>, <br> data: Data<<a class="struct" href="../../../../../guard/data/struct.Data.html" title="struct guard::data::Data">Data</a>><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><impl Responder, <a class="enum" href="../../../../../guard/errors/enum.ServiceError.html" title="enum guard::errors::ServiceError">ServiceError</a>></pre><div class="docblock"><p>route handler that verifies PoW and issues a solution token
|
||||
if verification is successful</p>
|
||||
</div></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<script src="../../../../../main.js"></script><script defer src="../../../../../search-index.js"></script></body></html>
|
@ -1,7 +1,12 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `verify_pow` mod in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, verify_pow"><title>guard::api::v1::pow::verify_pow - Rust</title><link rel="stylesheet" type="text/css" href="../../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../../rust-logo.png' alt='logo'></div></a><p class="location">Module verify_pow</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li><li><a href="#functions">Functions</a></li></ul></div><p class="location"><a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a></p><div id="sidebar-vars" data-name="verify_pow" data-ty="mod" data-relpath="../"></div><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a class="mod" href="">verify_pow</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#18-130" title="goto source code">[src]</a></span></h1><h2 id="structs" class="section-header"><a href="#structs">Structs</a></h2>
|
||||
<table><tr class="module-item"><td><a class="struct" href="struct.ValidationToken.html" title="guard::api::v1::pow::verify_pow::ValidationToken struct">ValidationToken</a></td><td class="docblock-short"></td></tr></table><h2 id="functions" class="section-header"><a href="#functions">Functions</a></h2>
|
||||
<table><tr class="module-item"><td><a class="fn" href="fn.verify_pow.html" title="guard::api::v1::pow::verify_pow::verify_pow fn">verify_pow</a></td><td class="docblock-short"></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a class="mod" href="">verify_pow</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#17-138" title="goto source code">[src]</a></span></h1><div class="docblock"><p>PoW Verification module</p>
|
||||
</div><h2 id="structs" class="section-header"><a href="#structs">Structs</a></h2>
|
||||
<table><tr class="module-item"><td><a class="struct" href="struct.ValidationToken.html" title="guard::api::v1::pow::verify_pow::ValidationToken struct">ValidationToken</a></td><td class="docblock-short"><p>validation token that clients receive as proof for submiting
|
||||
valid PoW</p>
|
||||
</td></tr></table><h2 id="functions" class="section-header"><a href="#functions">Functions</a></h2>
|
||||
<table><tr class="module-item"><td><a class="fn" href="fn.verify_pow.html" title="guard::api::v1::pow::verify_pow::verify_pow fn">verify_pow</a></td><td class="docblock-short"><p>route handler that verifies PoW and issues a solution token
|
||||
if verification is successful</p>
|
||||
</td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<script src="../../../../../main.js"></script><script defer src="../../../../../search-index.js"></script></body></html>
|
@ -1 +1 @@
|
||||
initSidebarItems({"fn":[["verify_pow",""]],"struct":[["ValidationToken",""]]});
|
||||
initSidebarItems({"fn":[["verify_pow","route handler that verifies PoW and issues a solution token if verification is successful"]],"struct":[["ValidationToken","validation token that clients receive as proof for submiting valid PoW"]]});
|
@ -1,14 +1,16 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `ValidationToken` struct in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, ValidationToken"><title>guard::api::v1::pow::verify_pow::ValidationToken - Rust</title><link rel="stylesheet" type="text/css" href="../../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../../down-arrow.svg");}</style></head><body class="rustdoc struct"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../../rust-logo.png' alt='logo'></div></a><p class="location">Struct ValidationToken</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#fields">Fields</a><div class="sidebar-links"><a href="#structfield.token">token</a></div><a class="sidebar-title" href="#trait-implementations">Trait Implementations</a><div class="sidebar-links"><a href="#impl-Clone">Clone</a><a href="#impl-Debug">Debug</a><a href="#impl-Deserialize%3C%27de%3E">Deserialize<'de></a><a href="#impl-Serialize">Serialize</a></div><a class="sidebar-title" href="#synthetic-implementations">Auto Trait Implementations</a><div class="sidebar-links"><a href="#impl-RefUnwindSafe">RefUnwindSafe</a><a href="#impl-Send">Send</a><a href="#impl-Sync">Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">UnwindSafe</a></div><a class="sidebar-title" href="#blanket-implementations">Blanket Implementations</a><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow<T></a><a href="#impl-BorrowMut%3CT%3E">BorrowMut<T></a><a href="#impl-Conv">Conv</a><a href="#impl-DeserializeOwned">DeserializeOwned</a><a href="#impl-FmtForward">FmtForward</a><a href="#impl-From%3CT%3E">From<T></a><a href="#impl-Instrument">Instrument</a><a href="#impl-Into%3CU%3E">Into<U></a><a href="#impl-Pipe">Pipe</a><a href="#impl-PipeAsRef">PipeAsRef</a><a href="#impl-PipeBorrow">PipeBorrow</a><a href="#impl-PipeDeref">PipeDeref</a><a href="#impl-PipeRef">PipeRef</a><a href="#impl-Same%3CT%3E">Same<T></a><a href="#impl-Tap">Tap</a><a href="#impl-TapAsRef%3CU%3E">TapAsRef<U></a><a href="#impl-TapBorrow%3CU%3E">TapBorrow<U></a><a href="#impl-TapDeref">TapDeref</a><a href="#impl-ToOwned">ToOwned</a><a href="#impl-TryConv">TryConv</a><a href="#impl-TryFrom%3CU%3E">TryFrom<U></a><a href="#impl-TryInto%3CU%3E">TryInto<U></a><a href="#impl-VZip%3CV%3E">VZip<V></a></div></div><p class="location"><a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">verify_pow</a></p><div id="sidebar-vars" data-name="ValidationToken" data-ty="struct" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Struct <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">verify_pow</a>::<wbr><a class="struct" href="">ValidationToken</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#26-28" title="goto source code">[src]</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class="rust struct">pub struct ValidationToken {
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Struct <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">verify_pow</a>::<wbr><a class="struct" href="">ValidationToken</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#30-32" title="goto source code">[src]</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class="rust struct">pub struct ValidationToken {
|
||||
pub token: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
|
||||
}</pre></div><h2 id="fields" class="fields small-section-header">
|
||||
Fields<a href="#fields" class="anchor"></a></h2><span id="structfield.token" class="structfield small-section-header"><a href="#structfield.token" class="anchor field"></a><code>token: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><h3 id="impl-Clone" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_pow/struct.ValidationToken.html" title="struct guard::api::v1::pow::verify_pow::ValidationToken">ValidationToken</a></code><a href="#impl-Clone" class="anchor"></a><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#25" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.clone" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone" class="fnname">clone</a>(&self) -> <a class="struct" href="../../../../../guard/api/v1/pow/verify_pow/struct.ValidationToken.html" title="struct guard::api::v1::pow::verify_pow::ValidationToken">ValidationToken</a></code><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#25" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Returns a copy of the value. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
|
||||
}</pre></div><div class="docblock"><p>validation token that clients receive as proof for submiting
|
||||
valid PoW</p>
|
||||
</div><h2 id="fields" class="fields small-section-header">
|
||||
Fields<a href="#fields" class="anchor"></a></h2><span id="structfield.token" class="structfield small-section-header"><a href="#structfield.token" class="anchor field"></a><code>token: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><h3 id="impl-Clone" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_pow/struct.ValidationToken.html" title="struct guard::api::v1::pow::verify_pow::ValidationToken">ValidationToken</a></code><a href="#impl-Clone" class="anchor"></a><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#27" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.clone" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone" class="fnname">clone</a>(&self) -> <a class="struct" href="../../../../../guard/api/v1/pow/verify_pow/struct.ValidationToken.html" title="struct guard::api::v1::pow::verify_pow::ValidationToken">ValidationToken</a></code><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#27" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Returns a copy of the value. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
|
||||
</div><h4 id="method.clone_from" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from" class="fnname">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>Self)</code><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/clone.rs.html#128" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from">Read more</a></p>
|
||||
</div></div><h3 id="impl-Debug" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_pow/struct.ValidationToken.html" title="struct guard::api::v1::pow::verify_pow::ValidationToken">ValidationToken</a></code><a href="#impl-Debug" class="anchor"></a><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#25" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.fmt" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt" class="fnname">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></code><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#25" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
|
||||
</div></div><h3 id="impl-Deserialize%3C%27de%3E" class="impl"><code class="in-band">impl<'de> <a class="trait" href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserialize.html" title="trait serde::de::Deserialize">Deserialize</a><'de> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_pow/struct.ValidationToken.html" title="struct guard::api::v1::pow::verify_pow::ValidationToken">ValidationToken</a></code><a href="#impl-Deserialize%3C%27de%3E" class="anchor"></a><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#25" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.deserialize" class="method hidden"><code>fn <a href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserialize.html#tymethod.deserialize" class="fnname">deserialize</a><__D>(__deserializer: __D) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Self, __D::<a class="type" href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserializer.html#associatedtype.Error" title="type serde::de::Deserializer::Error">Error</a>> <span class="where fmt-newline">where<br> __D: <a class="trait" href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserializer.html" title="trait serde::de::Deserializer">Deserializer</a><'de>, </span></code><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#25" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Deserialize this value from the given Serde deserializer. <a href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserialize.html#tymethod.deserialize">Read more</a></p>
|
||||
</div></div><h3 id="impl-Serialize" class="impl"><code class="in-band">impl <a class="trait" href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_pow/struct.ValidationToken.html" title="struct guard::api::v1::pow::verify_pow::ValidationToken">ValidationToken</a></code><a href="#impl-Serialize" class="anchor"></a><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#25" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.serialize" class="method hidden"><code>fn <a href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serialize.html#tymethod.serialize" class="fnname">serialize</a><__S>(&self, __serializer: __S) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><__S::<a class="type" href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serializer.html#associatedtype.Ok" title="type serde::ser::Serializer::Ok">Ok</a>, __S::<a class="type" href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serializer.html#associatedtype.Error" title="type serde::ser::Serializer::Error">Error</a>> <span class="where fmt-newline">where<br> __S: <a class="trait" href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serializer.html" title="trait serde::ser::Serializer">Serializer</a>, </span></code><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#25" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Serialize this value into the given Serde serializer. <a href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serialize.html#tymethod.serialize">Read more</a></p>
|
||||
</div></div><h3 id="impl-Debug" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_pow/struct.ValidationToken.html" title="struct guard::api::v1::pow::verify_pow::ValidationToken">ValidationToken</a></code><a href="#impl-Debug" class="anchor"></a><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#27" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.fmt" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt" class="fnname">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></code><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#27" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
|
||||
</div></div><h3 id="impl-Deserialize%3C%27de%3E" class="impl"><code class="in-band">impl<'de> <a class="trait" href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserialize.html" title="trait serde::de::Deserialize">Deserialize</a><'de> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_pow/struct.ValidationToken.html" title="struct guard::api::v1::pow::verify_pow::ValidationToken">ValidationToken</a></code><a href="#impl-Deserialize%3C%27de%3E" class="anchor"></a><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#27" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.deserialize" class="method hidden"><code>fn <a href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserialize.html#tymethod.deserialize" class="fnname">deserialize</a><__D>(__deserializer: __D) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Self, __D::<a class="type" href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserializer.html#associatedtype.Error" title="type serde::de::Deserializer::Error">Error</a>> <span class="where fmt-newline">where<br> __D: <a class="trait" href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserializer.html" title="trait serde::de::Deserializer">Deserializer</a><'de>, </span></code><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#27" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Deserialize this value from the given Serde deserializer. <a href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserialize.html#tymethod.deserialize">Read more</a></p>
|
||||
</div></div><h3 id="impl-Serialize" class="impl"><code class="in-band">impl <a class="trait" href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_pow/struct.ValidationToken.html" title="struct guard::api::v1::pow::verify_pow::ValidationToken">ValidationToken</a></code><a href="#impl-Serialize" class="anchor"></a><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#27" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.serialize" class="method hidden"><code>fn <a href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serialize.html#tymethod.serialize" class="fnname">serialize</a><__S>(&self, __serializer: __S) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><__S::<a class="type" href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serializer.html#associatedtype.Ok" title="type serde::ser::Serializer::Ok">Ok</a>, __S::<a class="type" href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serializer.html#associatedtype.Error" title="type serde::ser::Serializer::Error">Error</a>> <span class="where fmt-newline">where<br> __S: <a class="trait" href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serializer.html" title="trait serde::ser::Serializer">Serializer</a>, </span></code><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_pow.rs.html#27" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Serialize this value into the given Serde serializer. <a href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serialize.html#tymethod.serialize">Read more</a></p>
|
||||
</div></div></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor"></a></h2><div id="synthetic-implementations-list"><h3 id="impl-RefUnwindSafe" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.RefUnwindSafe.html" title="trait std::panic::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_pow/struct.ValidationToken.html" title="struct guard::api::v1::pow::verify_pow::ValidationToken">ValidationToken</a></code><a href="#impl-RefUnwindSafe" class="anchor"></a><a class="srclink" href="../../../../../src/guard/main.rs.html#1" title="goto source code">[src]</a></h3><div class="impl-items"></div><h3 id="impl-Send" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_pow/struct.ValidationToken.html" title="struct guard::api::v1::pow::verify_pow::ValidationToken">ValidationToken</a></code><a href="#impl-Send" class="anchor"></a><a class="srclink" href="../../../../../src/guard/main.rs.html#1" title="goto source code">[src]</a></h3><div class="impl-items"></div><h3 id="impl-Sync" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_pow/struct.ValidationToken.html" title="struct guard::api::v1::pow::verify_pow::ValidationToken">ValidationToken</a></code><a href="#impl-Sync" class="anchor"></a><a class="srclink" href="../../../../../src/guard/main.rs.html#1" title="goto source code">[src]</a></h3><div class="impl-items"></div><h3 id="impl-Unpin" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_pow/struct.ValidationToken.html" title="struct guard::api::v1::pow::verify_pow::ValidationToken">ValidationToken</a></code><a href="#impl-Unpin" class="anchor"></a><a class="srclink" href="../../../../../src/guard/main.rs.html#1" title="goto source code">[src]</a></h3><div class="impl-items"></div><h3 id="impl-UnwindSafe" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.UnwindSafe.html" title="trait std::panic::UnwindSafe">UnwindSafe</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_pow/struct.ValidationToken.html" title="struct guard::api::v1::pow::verify_pow::ValidationToken">ValidationToken</a></code><a href="#impl-UnwindSafe" class="anchor"></a><a class="srclink" href="../../../../../src/guard/main.rs.html#1" title="goto source code">[src]</a></h3><div class="impl-items"></div></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor"></a></h2><div id="blanket-implementations-list"><h3 id="impl-Any" class="impl"><code class="in-band">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br> T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></code><a href="#impl-Any" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#131-135" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.type_id" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id" class="fnname">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#132" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
|
||||
</div></div><h3 id="impl-Borrow%3CT%3E" class="impl"><code class="in-band">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T <span class="where fmt-newline">where<br> T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></code><a href="#impl-Borrow%3CT%3E" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#207-211" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.borrow" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow" class="fnname">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>T</code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#208" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></p>
|
||||
</div></div><h3 id="impl-BorrowMut%3CT%3E" class="impl"><code class="in-band">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T <span class="where fmt-newline">where<br> T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></code><a href="#impl-BorrowMut%3CT%3E" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#214-218" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.borrow_mut" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fnname">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut </a>T</code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#215" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></p>
|
||||
|
@ -1,5 +1,6 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `validate_captcha_token` fn in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, validate_captcha_token"><title>guard::api::v1::pow::verify_token::validate_captcha_token - Rust</title><link rel="stylesheet" type="text/css" href="../../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../../down-arrow.svg");}</style></head><body class="rustdoc fn"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../../rust-logo.png' alt='logo'></div></a><div class="sidebar-elems"><p class="location"><a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">verify_token</a></p><div id="sidebar-vars" data-name="validate_captcha_token" data-ty="fn" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">verify_token</a>::<wbr><a class="fn" href="">validate_captcha_token</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#32-43" title="goto source code">[src]</a></span></h1><pre class="rust fn">pub async fn validate_captcha_token(<br> payload: Json<VerifyCaptchaResult>, <br> data: Data<<a class="struct" href="../../../../../guard/data/struct.Data.html" title="struct guard::data::Data">Data</a>><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><impl Responder, <a class="enum" href="../../../../../guard/errors/enum.ServiceError.html" title="enum guard::errors::ServiceError">ServiceError</a>></pre></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">verify_token</a>::<wbr><a class="fn" href="">validate_captcha_token</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#35-48" title="goto source code">[src]</a></span></h1><pre class="rust fn">pub async fn validate_captcha_token(<br> payload: Json<VerifyCaptchaResult>, <br> data: Data<<a class="struct" href="../../../../../guard/data/struct.Data.html" title="struct guard::data::Data">Data</a>><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><impl Responder, <a class="enum" href="../../../../../guard/errors/enum.ServiceError.html" title="enum guard::errors::ServiceError">ServiceError</a>></pre><div class="docblock"><p>route hander that validates a PoW solution token</p>
|
||||
</div></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<script src="../../../../../main.js"></script><script defer src="../../../../../search-index.js"></script></body></html>
|
@ -1,7 +1,9 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `verify_token` mod in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, verify_token"><title>guard::api::v1::pow::verify_token - Rust</title><link rel="stylesheet" type="text/css" href="../../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../../rust-logo.png' alt='logo'></div></a><p class="location">Module verify_token</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li><li><a href="#functions">Functions</a></li></ul></div><p class="location"><a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a></p><div id="sidebar-vars" data-name="verify_token" data-ty="mod" data-relpath="../"></div><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a class="mod" href="">verify_token</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#18-151" title="goto source code">[src]</a></span></h1><h2 id="structs" class="section-header"><a href="#structs">Structs</a></h2>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a class="mod" href="">verify_token</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#17-156" title="goto source code">[src]</a></span></h1><div class="docblock"><p>PoW success token module</p>
|
||||
</div><h2 id="structs" class="section-header"><a href="#structs">Structs</a></h2>
|
||||
<table><tr class="module-item"><td><a class="struct" href="struct.CaptchaValidateResp.html" title="guard::api::v1::pow::verify_token::CaptchaValidateResp struct">CaptchaValidateResp</a></td><td class="docblock-short"></td></tr></table><h2 id="functions" class="section-header"><a href="#functions">Functions</a></h2>
|
||||
<table><tr class="module-item"><td><a class="fn" href="fn.validate_captcha_token.html" title="guard::api::v1::pow::verify_token::validate_captcha_token fn">validate_captcha_token</a></td><td class="docblock-short"></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<table><tr class="module-item"><td><a class="fn" href="fn.validate_captcha_token.html" title="guard::api::v1::pow::verify_token::validate_captcha_token fn">validate_captcha_token</a></td><td class="docblock-short"><p>route hander that validates a PoW solution token</p>
|
||||
</td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<script src="../../../../../main.js"></script><script defer src="../../../../../search-index.js"></script></body></html>
|
@ -1 +1 @@
|
||||
initSidebarItems({"fn":[["validate_captcha_token",""]],"struct":[["CaptchaValidateResp",""]]});
|
||||
initSidebarItems({"fn":[["validate_captcha_token","route hander that validates a PoW solution token"]],"struct":[["CaptchaValidateResp",""]]});
|
@ -1,14 +1,14 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `CaptchaValidateResp` struct in crate `guard`."><meta name="keywords" content="rust, rustlang, rust-lang, CaptchaValidateResp"><title>guard::api::v1::pow::verify_token::CaptchaValidateResp - Rust</title><link rel="stylesheet" type="text/css" href="../../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../../../ayu.css" disabled ><script id="default-settings"></script><script src="../../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../../../favicon.svg">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-16x16.png">
|
||||
<link rel="alternate icon" type="image/png" href="../../../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../../../down-arrow.svg");}</style></head><body class="rustdoc struct"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../../../guard/index.html'><div class='logo-container rust-logo'><img src='../../../../../rust-logo.png' alt='logo'></div></a><p class="location">Struct CaptchaValidateResp</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#fields">Fields</a><div class="sidebar-links"><a href="#structfield.valid">valid</a></div><a class="sidebar-title" href="#trait-implementations">Trait Implementations</a><div class="sidebar-links"><a href="#impl-Clone">Clone</a><a href="#impl-Debug">Debug</a><a href="#impl-Deserialize%3C%27de%3E">Deserialize<'de></a><a href="#impl-Serialize">Serialize</a></div><a class="sidebar-title" href="#synthetic-implementations">Auto Trait Implementations</a><div class="sidebar-links"><a href="#impl-RefUnwindSafe">RefUnwindSafe</a><a href="#impl-Send">Send</a><a href="#impl-Sync">Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">UnwindSafe</a></div><a class="sidebar-title" href="#blanket-implementations">Blanket Implementations</a><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow<T></a><a href="#impl-BorrowMut%3CT%3E">BorrowMut<T></a><a href="#impl-Conv">Conv</a><a href="#impl-DeserializeOwned">DeserializeOwned</a><a href="#impl-FmtForward">FmtForward</a><a href="#impl-From%3CT%3E">From<T></a><a href="#impl-Instrument">Instrument</a><a href="#impl-Into%3CU%3E">Into<U></a><a href="#impl-Pipe">Pipe</a><a href="#impl-PipeAsRef">PipeAsRef</a><a href="#impl-PipeBorrow">PipeBorrow</a><a href="#impl-PipeDeref">PipeDeref</a><a href="#impl-PipeRef">PipeRef</a><a href="#impl-Same%3CT%3E">Same<T></a><a href="#impl-Tap">Tap</a><a href="#impl-TapAsRef%3CU%3E">TapAsRef<U></a><a href="#impl-TapBorrow%3CU%3E">TapBorrow<U></a><a href="#impl-TapDeref">TapDeref</a><a href="#impl-ToOwned">ToOwned</a><a href="#impl-TryConv">TryConv</a><a href="#impl-TryFrom%3CU%3E">TryFrom<U></a><a href="#impl-TryInto%3CU%3E">TryInto<U></a><a href="#impl-VZip%3CV%3E">VZip<V></a></div></div><p class="location"><a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">verify_token</a></p><div id="sidebar-vars" data-name="CaptchaValidateResp" data-ty="struct" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" class="help-button">?</button>
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Struct <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">verify_token</a>::<wbr><a class="struct" href="">CaptchaValidateResp</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#26-28" title="goto source code">[src]</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class="rust struct">pub struct CaptchaValidateResp {
|
||||
<a id="settings-menu" href="../../../../../settings.html"><img src="../../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Struct <a href="../../../../index.html">guard</a>::<wbr><a href="../../../index.html">api</a>::<wbr><a href="../../index.html">v1</a>::<wbr><a href="../index.html">pow</a>::<wbr><a href="index.html">verify_token</a>::<wbr><a class="struct" href="">CaptchaValidateResp</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#28-30" title="goto source code">[src]</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class="rust struct">pub struct CaptchaValidateResp {
|
||||
pub valid: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
||||
}</pre></div><h2 id="fields" class="fields small-section-header">
|
||||
Fields<a href="#fields" class="anchor"></a></h2><span id="structfield.valid" class="structfield small-section-header"><a href="#structfield.valid" class="anchor field"></a><code>valid: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><h3 id="impl-Clone" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_token/struct.CaptchaValidateResp.html" title="struct guard::api::v1::pow::verify_token::CaptchaValidateResp">CaptchaValidateResp</a></code><a href="#impl-Clone" class="anchor"></a><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#25" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.clone" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone" class="fnname">clone</a>(&self) -> <a class="struct" href="../../../../../guard/api/v1/pow/verify_token/struct.CaptchaValidateResp.html" title="struct guard::api::v1::pow::verify_token::CaptchaValidateResp">CaptchaValidateResp</a></code><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#25" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Returns a copy of the value. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
|
||||
Fields<a href="#fields" class="anchor"></a></h2><span id="structfield.valid" class="structfield small-section-header"><a href="#structfield.valid" class="anchor field"></a><code>valid: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><h3 id="impl-Clone" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_token/struct.CaptchaValidateResp.html" title="struct guard::api::v1::pow::verify_token::CaptchaValidateResp">CaptchaValidateResp</a></code><a href="#impl-Clone" class="anchor"></a><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#27" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.clone" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone" class="fnname">clone</a>(&self) -> <a class="struct" href="../../../../../guard/api/v1/pow/verify_token/struct.CaptchaValidateResp.html" title="struct guard::api::v1::pow::verify_token::CaptchaValidateResp">CaptchaValidateResp</a></code><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#27" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Returns a copy of the value. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
|
||||
</div><h4 id="method.clone_from" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from" class="fnname">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>Self)</code><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/clone.rs.html#128" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from">Read more</a></p>
|
||||
</div></div><h3 id="impl-Debug" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_token/struct.CaptchaValidateResp.html" title="struct guard::api::v1::pow::verify_token::CaptchaValidateResp">CaptchaValidateResp</a></code><a href="#impl-Debug" class="anchor"></a><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#25" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.fmt" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt" class="fnname">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></code><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#25" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
|
||||
</div></div><h3 id="impl-Deserialize%3C%27de%3E" class="impl"><code class="in-band">impl<'de> <a class="trait" href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserialize.html" title="trait serde::de::Deserialize">Deserialize</a><'de> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_token/struct.CaptchaValidateResp.html" title="struct guard::api::v1::pow::verify_token::CaptchaValidateResp">CaptchaValidateResp</a></code><a href="#impl-Deserialize%3C%27de%3E" class="anchor"></a><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#25" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.deserialize" class="method hidden"><code>fn <a href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserialize.html#tymethod.deserialize" class="fnname">deserialize</a><__D>(__deserializer: __D) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Self, __D::<a class="type" href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserializer.html#associatedtype.Error" title="type serde::de::Deserializer::Error">Error</a>> <span class="where fmt-newline">where<br> __D: <a class="trait" href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserializer.html" title="trait serde::de::Deserializer">Deserializer</a><'de>, </span></code><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#25" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Deserialize this value from the given Serde deserializer. <a href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserialize.html#tymethod.deserialize">Read more</a></p>
|
||||
</div></div><h3 id="impl-Serialize" class="impl"><code class="in-band">impl <a class="trait" href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_token/struct.CaptchaValidateResp.html" title="struct guard::api::v1::pow::verify_token::CaptchaValidateResp">CaptchaValidateResp</a></code><a href="#impl-Serialize" class="anchor"></a><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#25" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.serialize" class="method hidden"><code>fn <a href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serialize.html#tymethod.serialize" class="fnname">serialize</a><__S>(&self, __serializer: __S) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><__S::<a class="type" href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serializer.html#associatedtype.Ok" title="type serde::ser::Serializer::Ok">Ok</a>, __S::<a class="type" href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serializer.html#associatedtype.Error" title="type serde::ser::Serializer::Error">Error</a>> <span class="where fmt-newline">where<br> __S: <a class="trait" href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serializer.html" title="trait serde::ser::Serializer">Serializer</a>, </span></code><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#25" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Serialize this value into the given Serde serializer. <a href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serialize.html#tymethod.serialize">Read more</a></p>
|
||||
</div></div><h3 id="impl-Debug" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_token/struct.CaptchaValidateResp.html" title="struct guard::api::v1::pow::verify_token::CaptchaValidateResp">CaptchaValidateResp</a></code><a href="#impl-Debug" class="anchor"></a><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#27" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.fmt" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt" class="fnname">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></code><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#27" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
|
||||
</div></div><h3 id="impl-Deserialize%3C%27de%3E" class="impl"><code class="in-band">impl<'de> <a class="trait" href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserialize.html" title="trait serde::de::Deserialize">Deserialize</a><'de> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_token/struct.CaptchaValidateResp.html" title="struct guard::api::v1::pow::verify_token::CaptchaValidateResp">CaptchaValidateResp</a></code><a href="#impl-Deserialize%3C%27de%3E" class="anchor"></a><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#27" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.deserialize" class="method hidden"><code>fn <a href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserialize.html#tymethod.deserialize" class="fnname">deserialize</a><__D>(__deserializer: __D) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Self, __D::<a class="type" href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserializer.html#associatedtype.Error" title="type serde::de::Deserializer::Error">Error</a>> <span class="where fmt-newline">where<br> __D: <a class="trait" href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserializer.html" title="trait serde::de::Deserializer">Deserializer</a><'de>, </span></code><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#27" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Deserialize this value from the given Serde deserializer. <a href="https://docs.rs/serde/1.0.125/serde/de/trait.Deserialize.html#tymethod.deserialize">Read more</a></p>
|
||||
</div></div><h3 id="impl-Serialize" class="impl"><code class="in-band">impl <a class="trait" href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_token/struct.CaptchaValidateResp.html" title="struct guard::api::v1::pow::verify_token::CaptchaValidateResp">CaptchaValidateResp</a></code><a href="#impl-Serialize" class="anchor"></a><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#27" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.serialize" class="method hidden"><code>fn <a href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serialize.html#tymethod.serialize" class="fnname">serialize</a><__S>(&self, __serializer: __S) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><__S::<a class="type" href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serializer.html#associatedtype.Ok" title="type serde::ser::Serializer::Ok">Ok</a>, __S::<a class="type" href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serializer.html#associatedtype.Error" title="type serde::ser::Serializer::Error">Error</a>> <span class="where fmt-newline">where<br> __S: <a class="trait" href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serializer.html" title="trait serde::ser::Serializer">Serializer</a>, </span></code><a class="srclink" href="../../../../../src/guard/api/v1/pow/verify_token.rs.html#27" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Serialize this value into the given Serde serializer. <a href="https://docs.rs/serde/1.0.125/serde/ser/trait.Serialize.html#tymethod.serialize">Read more</a></p>
|
||||
</div></div></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor"></a></h2><div id="synthetic-implementations-list"><h3 id="impl-RefUnwindSafe" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.RefUnwindSafe.html" title="trait std::panic::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_token/struct.CaptchaValidateResp.html" title="struct guard::api::v1::pow::verify_token::CaptchaValidateResp">CaptchaValidateResp</a></code><a href="#impl-RefUnwindSafe" class="anchor"></a><a class="srclink" href="../../../../../src/guard/main.rs.html#1" title="goto source code">[src]</a></h3><div class="impl-items"></div><h3 id="impl-Send" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_token/struct.CaptchaValidateResp.html" title="struct guard::api::v1::pow::verify_token::CaptchaValidateResp">CaptchaValidateResp</a></code><a href="#impl-Send" class="anchor"></a><a class="srclink" href="../../../../../src/guard/main.rs.html#1" title="goto source code">[src]</a></h3><div class="impl-items"></div><h3 id="impl-Sync" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_token/struct.CaptchaValidateResp.html" title="struct guard::api::v1::pow::verify_token::CaptchaValidateResp">CaptchaValidateResp</a></code><a href="#impl-Sync" class="anchor"></a><a class="srclink" href="../../../../../src/guard/main.rs.html#1" title="goto source code">[src]</a></h3><div class="impl-items"></div><h3 id="impl-Unpin" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_token/struct.CaptchaValidateResp.html" title="struct guard::api::v1::pow::verify_token::CaptchaValidateResp">CaptchaValidateResp</a></code><a href="#impl-Unpin" class="anchor"></a><a class="srclink" href="../../../../../src/guard/main.rs.html#1" title="goto source code">[src]</a></h3><div class="impl-items"></div><h3 id="impl-UnwindSafe" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.UnwindSafe.html" title="trait std::panic::UnwindSafe">UnwindSafe</a> for <a class="struct" href="../../../../../guard/api/v1/pow/verify_token/struct.CaptchaValidateResp.html" title="struct guard::api::v1::pow::verify_token::CaptchaValidateResp">CaptchaValidateResp</a></code><a href="#impl-UnwindSafe" class="anchor"></a><a class="srclink" href="../../../../../src/guard/main.rs.html#1" title="goto source code">[src]</a></h3><div class="impl-items"></div></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor"></a></h2><div id="blanket-implementations-list"><h3 id="impl-Any" class="impl"><code class="in-band">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br> T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></code><a href="#impl-Any" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#131-135" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.type_id" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id" class="fnname">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#132" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
|
||||
</div></div><h3 id="impl-Borrow%3CT%3E" class="impl"><code class="in-band">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T <span class="where fmt-newline">where<br> T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></code><a href="#impl-Borrow%3CT%3E" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#207-211" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.borrow" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow" class="fnname">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>T</code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#208" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></p>
|
||||
</div></div><h3 id="impl-BorrowMut%3CT%3E" class="impl"><code class="in-band">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T <span class="where fmt-newline">where<br> T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></code><a href="#impl-BorrowMut%3CT%3E" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#214-218" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.borrow_mut" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fnname">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut </a>T</code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#215" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></p>
|
||||
|
File diff suppressed because one or more lines are too long
@ -29,6 +29,32 @@
|
||||
<span id="26">26</span>
|
||||
<span id="27">27</span>
|
||||
<span id="28">28</span>
|
||||
<span id="29">29</span>
|
||||
<span id="30">30</span>
|
||||
<span id="31">31</span>
|
||||
<span id="32">32</span>
|
||||
<span id="33">33</span>
|
||||
<span id="34">34</span>
|
||||
<span id="35">35</span>
|
||||
<span id="36">36</span>
|
||||
<span id="37">37</span>
|
||||
<span id="38">38</span>
|
||||
<span id="39">39</span>
|
||||
<span id="40">40</span>
|
||||
<span id="41">41</span>
|
||||
<span id="42">42</span>
|
||||
<span id="43">43</span>
|
||||
<span id="44">44</span>
|
||||
<span id="45">45</span>
|
||||
<span id="46">46</span>
|
||||
<span id="47">47</span>
|
||||
<span id="48">48</span>
|
||||
<span id="49">49</span>
|
||||
<span id="50">50</span>
|
||||
<span id="51">51</span>
|
||||
<span id="52">52</span>
|
||||
<span id="53">53</span>
|
||||
<span id="54">54</span>
|
||||
</pre><div class="example-wrap"><pre class="rust ">
|
||||
<span class="comment">/*
|
||||
* Copyright (C) 2021 Aravinth Manivannan <realaravinth@batsense.net>
|
||||
@ -49,7 +75,9 @@
|
||||
|
||||
<span class="kw">use</span> <span class="ident">sqlx</span>::<span class="ident">PgPool</span>;
|
||||
|
||||
<span class="kw">pub</span> <span class="kw">async</span> <span class="kw">fn</span> <span class="ident">fetched</span>(<span class="ident">key</span>: <span class="kw-2">&</span><span class="ident">str</span>, <span class="ident">db</span>: <span class="kw-2">&</span><span class="ident">PgPool</span>) {
|
||||
<span class="doccomment">/// record PoWConfig fetches</span>
|
||||
<span class="attribute">#[<span class="ident">inline</span>]</span>
|
||||
<span class="kw">pub</span> <span class="kw">async</span> <span class="kw">fn</span> <span class="ident">record_fetch</span>(<span class="ident">key</span>: <span class="kw-2">&</span><span class="ident">str</span>, <span class="ident">db</span>: <span class="kw-2">&</span><span class="ident">PgPool</span>) {
|
||||
<span class="kw">let</span> <span class="kw">_</span> <span class="op">=</span> <span class="ident">sqlx</span>::<span class="macro">query</span><span class="macro">!</span>(
|
||||
<span class="string">"INSERT INTO mcaptcha_pow_fetched_stats
|
||||
(config_id) VALUES ((SELECT config_id FROM mcaptcha_config WHERE key = $1))"</span>,
|
||||
@ -58,6 +86,30 @@
|
||||
.<span class="ident">execute</span>(<span class="ident">db</span>)
|
||||
.<span class="kw">await</span>;
|
||||
}
|
||||
|
||||
<span class="doccomment">/// record PoWConfig solves</span>
|
||||
<span class="attribute">#[<span class="ident">inline</span>]</span>
|
||||
<span class="kw">pub</span> <span class="kw">async</span> <span class="kw">fn</span> <span class="ident">record_solve</span>(<span class="ident">key</span>: <span class="kw-2">&</span><span class="ident">str</span>, <span class="ident">db</span>: <span class="kw-2">&</span><span class="ident">PgPool</span>) {
|
||||
<span class="kw">let</span> <span class="kw">_</span> <span class="op">=</span> <span class="ident">sqlx</span>::<span class="macro">query</span><span class="macro">!</span>(
|
||||
<span class="string">"INSERT INTO mcaptcha_pow_solved_stats
|
||||
(config_id) VALUES ((SELECT config_id FROM mcaptcha_config WHERE key = $1))"</span>,
|
||||
<span class="kw-2">&</span><span class="ident">key</span>,
|
||||
)
|
||||
.<span class="ident">execute</span>(<span class="ident">db</span>)
|
||||
.<span class="kw">await</span>;
|
||||
}
|
||||
|
||||
<span class="doccomment">/// record PoWConfig confirms</span>
|
||||
<span class="attribute">#[<span class="ident">inline</span>]</span>
|
||||
<span class="kw">pub</span> <span class="kw">async</span> <span class="kw">fn</span> <span class="ident">record_confirm</span>(<span class="ident">key</span>: <span class="kw-2">&</span><span class="ident">str</span>, <span class="ident">db</span>: <span class="kw-2">&</span><span class="ident">PgPool</span>) {
|
||||
<span class="kw">let</span> <span class="kw">_</span> <span class="op">=</span> <span class="ident">sqlx</span>::<span class="macro">query</span><span class="macro">!</span>(
|
||||
<span class="string">"INSERT INTO mcaptcha_pow_confirmed_stats
|
||||
(config_id) VALUES ((SELECT config_id FROM mcaptcha_config WHERE key = $1))"</span>,
|
||||
<span class="kw-2">&</span><span class="ident">key</span>,
|
||||
)
|
||||
.<span class="ident">execute</span>(<span class="ident">db</span>)
|
||||
.<span class="kw">await</span>;
|
||||
}
|
||||
</pre></div>
|
||||
</section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../../../../" data-current-crate="guard"></div>
|
||||
<script src="../../../../../main.js"></script><script src="../../../../../source-script.js"></script><script src="../../../../../source-files.js"></script><script defer src="../../../../../search-index.js"></script></body></html>
|
@ -184,6 +184,10 @@
|
||||
<span id="181">181</span>
|
||||
<span id="182">182</span>
|
||||
<span id="183">183</span>
|
||||
<span id="184">184</span>
|
||||
<span id="185">185</span>
|
||||
<span id="186">186</span>
|
||||
<span id="187">187</span>
|
||||
</pre><div class="example-wrap"><pre class="rust ">
|
||||
<span class="comment">/*
|
||||
* Copyright (C) 2021 Aravinth Manivannan <realaravinth@batsense.net>
|
||||
@ -207,9 +211,9 @@
|
||||
<span class="kw">use</span> <span class="ident">m_captcha</span>::{<span class="ident">defense</span>::<span class="ident">LevelBuilder</span>, <span class="ident">master</span>::<span class="ident">AddSiteBuilder</span>, <span class="ident">DefenseBuilder</span>, <span class="ident">MCaptchaBuilder</span>};
|
||||
<span class="kw">use</span> <span class="ident">serde</span>::{<span class="ident">Deserialize</span>, <span class="ident">Serialize</span>};
|
||||
|
||||
<span class="kw">use</span> <span class="kw">super</span>::<span class="ident">record_fetch</span>;
|
||||
<span class="kw">use</span> <span class="kw">super</span>::<span class="ident">GetDurationResp</span>;
|
||||
<span class="kw">use</span> <span class="kw">super</span>::<span class="ident">I32Levels</span>;
|
||||
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">api</span>::<span class="ident">v1</span>::<span class="ident">mcaptcha</span>::<span class="ident">stats</span>::<span class="ident">fetched</span>;
|
||||
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">errors</span>::<span class="kw-2">*</span>;
|
||||
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">Data</span>;
|
||||
|
||||
@ -226,6 +230,7 @@
|
||||
|
||||
<span class="comment">// API keys are mcaptcha actor names</span>
|
||||
|
||||
<span class="doccomment">/// get PoW configuration for an mcaptcha key</span>
|
||||
<span class="kw">pub</span> <span class="kw">async</span> <span class="kw">fn</span> <span class="ident">get_config</span>(
|
||||
<span class="ident">payload</span>: <span class="ident">web</span>::<span class="ident">Json</span><span class="op"><</span><span class="ident">GetConfigPayload</span><span class="op">></span>,
|
||||
<span class="ident">data</span>: <span class="ident">web</span>::<span class="ident">Data</span><span class="op"><</span><span class="ident">Data</span><span class="op">></span>,
|
||||
@ -255,7 +260,7 @@
|
||||
.<span class="ident">expect</span>(<span class="string">"mcaptcha should be initialized and ready to go"</span>);
|
||||
<span class="comment">// background it. would require data::Data to be static</span>
|
||||
<span class="comment">// to satidfy lifetime</span>
|
||||
<span class="ident">fetched</span>(<span class="kw-2">&</span><span class="ident">payload</span>.<span class="ident">key</span>, <span class="kw-2">&</span><span class="ident">data</span>.<span class="ident">db</span>).<span class="kw">await</span>;
|
||||
<span class="ident">record_fetch</span>(<span class="kw-2">&</span><span class="ident">payload</span>.<span class="ident">key</span>, <span class="kw-2">&</span><span class="ident">data</span>.<span class="ident">db</span>).<span class="kw">await</span>;
|
||||
<span class="prelude-val">Ok</span>(<span class="ident">HttpResponse</span>::<span class="prelude-val">Ok</span>().<span class="ident">json</span>(<span class="ident">config</span>))
|
||||
}
|
||||
}
|
||||
@ -265,7 +270,10 @@
|
||||
<span class="prelude-val">None</span> <span class="op">=</span><span class="op">></span> <span class="prelude-val">Err</span>(<span class="ident">ServiceError</span>::<span class="ident">TokenNotFound</span>),
|
||||
}
|
||||
}
|
||||
|
||||
<span class="doccomment">/// Call this when [MCaptcha][m_captcha::MCaptcha] is not in master.</span>
|
||||
<span class="doccomment">///</span>
|
||||
<span class="doccomment">/// This fn gets mcaptcha config from database, builds [Defense][m_captcha::Defense],</span>
|
||||
<span class="doccomment">/// creates [MCaptcha][m_captcha::MCaptcha] and adds it to [Master][m_captcha::Defense]</span>
|
||||
<span class="kw">async</span> <span class="kw">fn</span> <span class="ident">init_mcaptcha</span>(<span class="ident">data</span>: <span class="kw-2">&</span><span class="ident">Data</span>, <span class="ident">key</span>: <span class="kw-2">&</span><span class="ident">str</span>) <span class="op">-</span><span class="op">></span> <span class="ident">ServiceResult</span><span class="op"><</span>()<span class="op">></span> {
|
||||
<span class="comment">// get levels</span>
|
||||
<span class="kw">let</span> <span class="ident">levels_fut</span> <span class="op">=</span> <span class="ident">sqlx</span>::<span class="macro">query_as</span><span class="macro">!</span>(
|
||||
|
@ -71,6 +71,7 @@
|
||||
<span id="68">68</span>
|
||||
<span id="69">69</span>
|
||||
<span id="70">70</span>
|
||||
<span id="71">71</span>
|
||||
</pre><div class="example-wrap"><pre class="rust ">
|
||||
<span class="comment">/*
|
||||
* Copyright (C) 2021 Aravinth Manivannan <realaravinth@batsense.net>
|
||||
@ -98,6 +99,7 @@
|
||||
|
||||
<span class="kw">pub</span> <span class="kw">use</span> <span class="kw">super</span>::<span class="ident">mcaptcha</span>::<span class="ident">duration</span>::<span class="ident">GetDurationResp</span>;
|
||||
<span class="kw">pub</span> <span class="kw">use</span> <span class="kw">super</span>::<span class="ident">mcaptcha</span>::<span class="ident">levels</span>::<span class="ident">I32Levels</span>;
|
||||
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">api</span>::<span class="ident">v1</span>::<span class="ident">mcaptcha</span>::<span class="ident">stats</span>::<span class="kw-2">*</span>;
|
||||
|
||||
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">services</span>(<span class="ident">cfg</span>: <span class="kw-2">&</span><span class="kw-2">mut</span> <span class="ident">web</span>::<span class="ident">ServiceConfig</span>) {
|
||||
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">define_resource</span>;
|
||||
|
@ -131,6 +131,14 @@
|
||||
<span id="128">128</span>
|
||||
<span id="129">129</span>
|
||||
<span id="130">130</span>
|
||||
<span id="131">131</span>
|
||||
<span id="132">132</span>
|
||||
<span id="133">133</span>
|
||||
<span id="134">134</span>
|
||||
<span id="135">135</span>
|
||||
<span id="136">136</span>
|
||||
<span id="137">137</span>
|
||||
<span id="138">138</span>
|
||||
</pre><div class="example-wrap"><pre class="rust ">
|
||||
<span class="comment">/*
|
||||
* Copyright (C) 2021 Aravinth Manivannan <realaravinth@batsense.net>
|
||||
@ -148,26 +156,34 @@
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/</span>
|
||||
<span class="doccomment">//! PoW Verification module</span>
|
||||
|
||||
<span class="kw">use</span> <span class="ident">actix_web</span>::{<span class="ident">web</span>, <span class="ident">HttpResponse</span>, <span class="ident">Responder</span>};
|
||||
<span class="kw">use</span> <span class="ident">m_captcha</span>::<span class="ident">pow</span>::<span class="ident">Work</span>;
|
||||
<span class="kw">use</span> <span class="ident">serde</span>::{<span class="ident">Deserialize</span>, <span class="ident">Serialize</span>};
|
||||
|
||||
<span class="kw">use</span> <span class="kw">super</span>::<span class="ident">record_solve</span>;
|
||||
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">errors</span>::<span class="kw-2">*</span>;
|
||||
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">Data</span>;
|
||||
|
||||
<span class="attribute">#[<span class="ident">derive</span>(<span class="ident">Clone</span>, <span class="ident">Debug</span>, <span class="ident">Deserialize</span>, <span class="ident">Serialize</span>)]</span>
|
||||
<span class="doccomment">/// validation token that clients receive as proof for submiting</span>
|
||||
<span class="doccomment">/// valid PoW</span>
|
||||
<span class="kw">pub</span> <span class="kw">struct</span> <span class="ident">ValidationToken</span> {
|
||||
<span class="kw">pub</span> <span class="ident">token</span>: <span class="ident">String</span>,
|
||||
}
|
||||
|
||||
<span class="comment">// API keys are mcaptcha actor names</span>
|
||||
|
||||
<span class="doccomment">/// route handler that verifies PoW and issues a solution token</span>
|
||||
<span class="doccomment">/// if verification is successful</span>
|
||||
<span class="kw">pub</span> <span class="kw">async</span> <span class="kw">fn</span> <span class="ident">verify_pow</span>(
|
||||
<span class="ident">payload</span>: <span class="ident">web</span>::<span class="ident">Json</span><span class="op"><</span><span class="ident">Work</span><span class="op">></span>,
|
||||
<span class="ident">data</span>: <span class="ident">web</span>::<span class="ident">Data</span><span class="op"><</span><span class="ident">Data</span><span class="op">></span>,
|
||||
) <span class="op">-</span><span class="op">></span> <span class="ident">ServiceResult</span><span class="op"><</span><span class="kw">impl</span> <span class="ident">Responder</span><span class="op">></span> {
|
||||
<span class="kw">let</span> <span class="ident">key</span> <span class="op">=</span> <span class="ident">payload</span>.<span class="ident">key</span>.<span class="ident">clone</span>();
|
||||
<span class="kw">let</span> <span class="ident">res</span> <span class="op">=</span> <span class="ident">data</span>.<span class="ident">captcha</span>.<span class="ident">verify_pow</span>(<span class="ident">payload</span>.<span class="ident">into_inner</span>()).<span class="kw">await</span><span class="question-mark">?</span>;
|
||||
<span class="ident">record_solve</span>(<span class="kw-2">&</span><span class="ident">key</span>, <span class="kw-2">&</span><span class="ident">data</span>.<span class="ident">db</span>).<span class="kw">await</span>;
|
||||
<span class="kw">let</span> <span class="ident">payload</span> <span class="op">=</span> <span class="ident">ValidationToken</span> { <span class="ident">token</span>: <span class="ident">res</span> };
|
||||
<span class="prelude-val">Ok</span>(<span class="ident">HttpResponse</span>::<span class="prelude-val">Ok</span>().<span class="ident">json</span>(<span class="ident">payload</span>))
|
||||
}
|
||||
|
@ -152,6 +152,11 @@
|
||||
<span id="149">149</span>
|
||||
<span id="150">150</span>
|
||||
<span id="151">151</span>
|
||||
<span id="152">152</span>
|
||||
<span id="153">153</span>
|
||||
<span id="154">154</span>
|
||||
<span id="155">155</span>
|
||||
<span id="156">156</span>
|
||||
</pre><div class="example-wrap"><pre class="rust ">
|
||||
<span class="comment">/*
|
||||
* Copyright (C) 2021 Aravinth Manivannan <realaravinth@batsense.net>
|
||||
@ -169,11 +174,13 @@
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/</span>
|
||||
<span class="doccomment">//! PoW success token module</span>
|
||||
|
||||
<span class="kw">use</span> <span class="ident">actix_web</span>::{<span class="ident">web</span>, <span class="ident">HttpResponse</span>, <span class="ident">Responder</span>};
|
||||
<span class="kw">use</span> <span class="ident">m_captcha</span>::<span class="ident">cache</span>::<span class="ident">messages</span>::<span class="ident">VerifyCaptchaResult</span>;
|
||||
<span class="kw">use</span> <span class="ident">serde</span>::{<span class="ident">Deserialize</span>, <span class="ident">Serialize</span>};
|
||||
|
||||
<span class="kw">use</span> <span class="kw">super</span>::<span class="ident">record_confirm</span>;
|
||||
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">errors</span>::<span class="kw-2">*</span>;
|
||||
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">Data</span>;
|
||||
|
||||
@ -184,16 +191,19 @@
|
||||
|
||||
<span class="comment">// API keys are mcaptcha actor names</span>
|
||||
|
||||
<span class="doccomment">/// route hander that validates a PoW solution token</span>
|
||||
<span class="kw">pub</span> <span class="kw">async</span> <span class="kw">fn</span> <span class="ident">validate_captcha_token</span>(
|
||||
<span class="ident">payload</span>: <span class="ident">web</span>::<span class="ident">Json</span><span class="op"><</span><span class="ident">VerifyCaptchaResult</span><span class="op">></span>,
|
||||
<span class="ident">data</span>: <span class="ident">web</span>::<span class="ident">Data</span><span class="op"><</span><span class="ident">Data</span><span class="op">></span>,
|
||||
) <span class="op">-</span><span class="op">></span> <span class="ident">ServiceResult</span><span class="op"><</span><span class="kw">impl</span> <span class="ident">Responder</span><span class="op">></span> {
|
||||
<span class="kw">let</span> <span class="ident">key</span> <span class="op">=</span> <span class="ident">payload</span>.<span class="ident">key</span>.<span class="ident">clone</span>();
|
||||
<span class="kw">let</span> <span class="ident">res</span> <span class="op">=</span> <span class="ident">data</span>
|
||||
.<span class="ident">captcha</span>
|
||||
.<span class="ident">validate_verification_tokens</span>(<span class="ident">payload</span>.<span class="ident">into_inner</span>())
|
||||
.<span class="kw">await</span><span class="question-mark">?</span>;
|
||||
<span class="kw">let</span> <span class="ident">payload</span> <span class="op">=</span> <span class="ident">CaptchaValidateResp</span> { <span class="ident">valid</span>: <span class="ident">res</span> };
|
||||
<span class="macro">println</span><span class="macro">!</span>(<span class="string">"{:?}"</span>, <span class="kw-2">&</span><span class="ident">payload</span>);
|
||||
<span class="ident">record_confirm</span>(<span class="kw-2">&</span><span class="ident">key</span>, <span class="kw-2">&</span><span class="ident">data</span>.<span class="ident">db</span>).<span class="kw">await</span>;
|
||||
<span class="comment">//println!("{:?}", &payload);</span>
|
||||
<span class="prelude-val">Ok</span>(<span class="ident">HttpResponse</span>::<span class="prelude-val">Ok</span>().<span class="ident">json</span>(<span class="ident">payload</span>))
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user