jsdoc 0.5.0

JsDoc parser writen in rust
Documentation
[
    JsDoc {
        span: Span {
            lo: BytePos(
                15,
            ),
            hi: BytePos(
                15,
            ),
            ctxt: #0,
        },
        description: Text {
            span: Span {
                lo: BytePos(
                    15,
                ),
                hi: BytePos(
                    62,
                ),
                ctxt: #0,
            },
            value: Atom('*
             * Remove whitespace from around a string.
             *' type=dynamic),
        },
        tags: [
            TagItem {
                span: Span {
                    lo: BytePos(
                        15,
                    ),
                    hi: BytePos(
                        20,
                    ),
                    ctxt: #0,
                },
                tag_name: Text {
                    span: Span {
                        lo: BytePos(
                            15,
                        ),
                        hi: BytePos(
                            20,
                        ),
                        ctxt: #0,
                    },
                    value: Atom('param' type=inline),
                },
                tag: Parameter(
                    ParameterTag {
                        span: Span {
                            lo: BytePos(
                                15,
                            ),
                            hi: BytePos(
                                20,
                            ),
                            ctxt: #0,
                        },
                        name: None,
                        ty: Some(
                            Text {
                                span: Span {
                                    lo: BytePos(
                                        15,
                                    ),
                                    hi: BytePos(
                                        23,
                                    ),
                                    ctxt: #0,
                                },
                                value: Atom('{string}' type=dynamic),
                            },
                        ),
                        desc: Text {
                            span: Span {
                                lo: BytePos(
                                    15,
                                ),
                                hi: BytePos(
                                    18,
                                ),
                                ctxt: #0,
                            },
                            value: Atom('str' type=inline),
                        },
                    },
                ),
            },
        ],
    },
    JsDoc {
        span: Span {
            lo: BytePos(
                131,
            ),
            hi: BytePos(
                131,
            ),
            ctxt: #0,
        },
        description: Text {
            span: Span {
                lo: BytePos(
                    131,
                ),
                hi: BytePos(
                    157,
                ),
                ctxt: #0,
            },
            value: Atom('* Hidden utility function.' type=dynamic),
        },
        tags: [],
    },
    JsDoc {
        span: Span {
            lo: BytePos(
                200,
            ),
            hi: BytePos(
                239,
            ),
            ctxt: #0,
        },
        description: Text {
            span: Span {
                lo: BytePos(
                    200,
                ),
                hi: BytePos(
                    204,
                ),
                ctxt: #0,
            },
            value: Atom('*
             *' type=inline),
        },
        tags: [
            TagItem {
                span: Span {
                    lo: BytePos(
                        200,
                    ),
                    hi: BytePos(
                        209,
                    ),
                    ctxt: #0,
                },
                tag_name: Text {
                    span: Span {
                        lo: BytePos(
                            200,
                        ),
                        hi: BytePos(
                            209,
                        ),
                        ctxt: #0,
                    },
                    value: Atom('namespace' type=static),
                },
                tag: Namespace(
                    NamespaceTag {
                        span: Span {
                            lo: BytePos(
                                200,
                            ),
                            hi: BytePos(
                                209,
                            ),
                            ctxt: #0,
                        },
                        ty: None,
                        name: Some(
                            Text {
                                span: Span {
                                    lo: BytePos(
                                        200,
                                    ),
                                    hi: BytePos(
                                        229,
                                    ),
                                    ctxt: #0,
                                },
                                value: Atom('@borrows trstr as trim string' type=dynamic),
                            },
                        ),
                    },
                ),
            },
        ],
    },
]