File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 26372637 :target targetexpr
26382638 :field field
26392639 :children children
2640- :tag tag})
2640+ :tag (if (js-tag? tag)
2641+ (or (js-tag (-> tag meta :prefix ) :tag ) tag)
2642+ tag)})
26412643 ::call (let [argexprs (map #(analyze enve %) args)
26422644 children (into [targetexpr] argexprs)]
26432645 {:op :dot
26482650 :args argexprs
26492651 :children children
26502652 :tag (if (js-tag? tag)
2651- (let [pre (-> tag meta :prefix )
2652- [sym _] (find (get-in @env/*compiler*
2653- (into [::externs ] (butlast pre)))
2654- (last pre))]
2655- (:ret-tag (meta sym) tag))
2653+ (or (js-tag (-> tag meta :prefix ) :ret-tag ) tag)
26562654 tag)}))))
26572655
26582656(defmethod parse '.
Original file line number Diff line number Diff line change 665665 (require '[cljs.compiler :as cc])
666666 (require '[cljs.closure :as closure])
667667
668- ; ; TODO: need to handle the method/fn case
669668 (let [test-cenv (atom {::a/externs (externs/externs-map )})]
670669 (binding [a/*cljs-ns* a/*cljs-ns*
671670 a/*cljs-warnings* (assoc a/*cljs-warnings* :infer-warning true )]
715714 (map (comp :externs second)
716715 (get @test-cenv ::a/namespaces ))))))
717716
718- ; ; does NOT work, does not generate extern
717+ ; ; works, generates extern
719718 (let [test-cenv (atom {::a/externs (externs/externs-map
720719 (closure/load-externs
721720 {:externs [" src/test/externs/test.js" ]}))})]
You can’t perform that action at this time.
0 commit comments