1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
use super::*;

#[derive(Clone, Debug)]
pub struct Method {
    pub id: u32,
    pub generic: RcList<Typing>,
    pub version: String,
    pub class: Rc<Class>,
    pub class_typing: RcList<Typing>,
    pub class_traits: RcList<Trait>,
}

impl SignatureContainer for Method {
    fn get_signature(&self) -> Html {
        let head = Html::from("def");
        let generic = self.generic.render();
        let class = self.class.get_name();
        let class_typing = self.class_typing.render();
        let traits = self.class_traits.render();
        html! {<code class="signature">{head}{generic}{" "}{class}{class_typing}{traits}</code>}
    }

    fn get_id(&self) -> String {
        format!("extends.{}", self.id)
    }

    fn get_class(&self) -> String {
        format!("extends")
    }

    fn get_children(&self) -> Option<Html> {
        Some(html! {
        <p>
        {"Returns the match associated with the capture group at index"} <code>{"P"}</code>{"."}
                {"If i does not correspond to a capture group, or if the capture group
                did not participate in the match, then"}<code>{"None"}</code>{"is returned."}
                <br/>
                {"中文测试中文测试中文怎么样"}
                <br/>
                {"ab ab ab ab ab ab ab ab ab"}
        </p>
        })
    }
}