如何输入提示矢量?

时间:2018-02-08 13:09:08

标签: clojure

如何在Clojure函数中按向量键入提示?

 (defn foo
   [[^clojure.lang.PersistentVector x]]  
   (prn x))

这里我尝试输入提示参数x。但是,如果我传递[:foo :bar]之类的内容,x的值似乎只是:foo的值,即使我期待[:foo :bar]。我做错了什么?

1 个答案:

答案 0 :(得分:3)

由于双括号,您在不知不觉中对向量进行了解构。拿出来:

if ( ! function_exists( 'woocommerce_template_loop_product_title' ) ) {

    /**
    * Removes first word in WooCommerce product_title
    * @var $tag
    */
    function woocommerce_template_loop_product_title() {
        $tag = is_product_taxonomy() || is_shop() ? 'h2' : 'h3';

        echo apply_filters( 'woocommerce_template_loop_product_title', '<' . $tag . ' class="woocommerce-loop-product__title">' . substr(strstr(get_the_title()," "), 1) . '</' . $tag . '>');
    }

    /**
     * Removes first word in WooCommerce product page product_title
     * @var $tag
     */
    function woocommerce_single_product_summary() {
        $tag = 'h1';

        echo apply_filters(woocommerce_single_product_summary, '<' . $tag . ' class="product_title entry-title">' . substr(strstr(get_the_title()," "), 1) . '</' . $tag . '>');
    }
}