pub struct BookInfoOp {
pub book_url: Option<Rule>,
pub name: Option<Rule>,
pub author: Option<Rule>,
pub cover: Option<Rule>,
pub intro: Option<Rule>,
pub kind: Option<Rule>,
pub last_chapter: Option<Rule>,
pub toc_url: Option<Rule>,
pub word_count: Option<Rule>,
pub prelude: Vec<PreStep>,
}Expand description
书详情操作:详情字段抽取(同 BookRules)+ 可选前置请求链(见 design D7-bis)。
字段与 BookRules 同名同序,故现有 bookInfo:{...} JSON 逐字节解析等价;引擎经
BookInfoOp::as_book_rules 复用既有 eval_book_info(不用 flatten 以保 deny_unknown_fields)。
Fields§
§book_url: Option<Rule>§name: Option<Rule>§cover: Option<Rule>§intro: Option<Rule>§kind: Option<Rule>§last_chapter: Option<Rule>§toc_url: Option<Rule>§word_count: Option<Rule>§prelude: Vec<PreStep>详情主请求前的前置请求链;空 = 现状(直接 fetch book_url)。
Implementations§
Source§impl BookInfoOp
impl BookInfoOp
Sourcepub fn as_book_rules(&self) -> BookRules
pub fn as_book_rules(&self) -> BookRules
取详情字段抽取规则视图(供引擎复用 eval_book_info(&BookRules),不暴露 prelude)。
Trait Implementations§
Source§impl Clone for BookInfoOp
impl Clone for BookInfoOp
Source§fn clone(&self) -> BookInfoOp
fn clone(&self) -> BookInfoOp
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for BookInfoOp
impl Debug for BookInfoOp
Source§impl Default for BookInfoOp
impl Default for BookInfoOp
Source§fn default() -> BookInfoOp
fn default() -> BookInfoOp
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for BookInfoOp
impl<'de> Deserialize<'de> for BookInfoOp
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for BookInfoOp
Source§impl PartialEq for BookInfoOp
impl PartialEq for BookInfoOp
Source§fn eq(&self, other: &BookInfoOp) -> bool
fn eq(&self, other: &BookInfoOp) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for BookInfoOp
impl Serialize for BookInfoOp
impl StructuralPartialEq for BookInfoOp
Auto Trait Implementations§
impl Freeze for BookInfoOp
impl RefUnwindSafe for BookInfoOp
impl Send for BookInfoOp
impl Sync for BookInfoOp
impl Unpin for BookInfoOp
impl UnsafeUnpin for BookInfoOp
impl UnwindSafe for BookInfoOp
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.