varnish 0.7.0

A Rust framework for creating Varnish Caching Proxy extensions
Documentation
---
source: varnish-macros/src/tests.rs
---
VmodInfo {
    params: VmodParams {
        docs: None,
    },
    ident: "refcell_task",
    docs: "",
    funcs: [
        FuncInfo {
            func_type: Function,
            ident: "read",
            vcl_name: None,
            docs: "",
            has_optional_args: false,
            args: [
                ParamTypeInfo {
                    ident: "_ctx",
                    docs: "",
                    ty: Context {
                        is_mut: false,
                    },
                },
                ParamTypeInfo {
                    ident: "tsk",
                    docs: "",
                    ty: SharedPerTaskRefCell,
                },
            ],
            output_ty: Default,
            out_result: false,
            restrict: [],
        },
        FuncInfo {
            func_type: Function,
            ident: "write",
            vcl_name: None,
            docs: "",
            has_optional_args: false,
            args: [
                ParamTypeInfo {
                    ident: "_ctx",
                    docs: "",
                    ty: Context {
                        is_mut: true,
                    },
                },
                ParamTypeInfo {
                    ident: "tsk",
                    docs: "",
                    ty: SharedPerTaskRefCell,
                },
            ],
            output_ty: Default,
            out_result: false,
            restrict: [],
        },
        FuncInfo {
            func_type: Function,
            ident: "read_with_opt",
            vcl_name: None,
            docs: "",
            has_optional_args: true,
            args: [
                ParamTypeInfo {
                    ident: "tsk",
                    docs: "",
                    ty: SharedPerTaskRefCell,
                },
                ParamTypeInfo {
                    ident: "op",
                    docs: "",
                    ty: Value(
                        ParamInfo {
                            kind: Optional,
                            default: Null,
                            ty_info: I64,
                        },
                    ),
                },
            ],
            output_ty: Default,
            out_result: false,
            restrict: [],
        },
    ],
    objects: [],
    shared_types: SharedTypes {
        shared_per_task_ty: Some(
            "RefCell < Option < PerTaskCell > >",
        ),
        shared_per_vcl_ty: None,
    },
}