multimethod

    6

    2答えて

    Clojure 1.5.0では、defrecordで定義された独自のレコードタイプにカスタムのきれいなプリンタを提供する方法を教えてください。 (defrecord MyRecord [a b]) (defmethod print-method MyRecord [x ^java.io.Writer writer] (print-method (:a x) writer)) (d

    1

    1答えて

    私はMooseオブジェクトでマルチメソッドディスパッチが必要です。私はClass::Multimethods::Pureでこれをやっています。 MooseX::MultiMethodsの代わりにこれを選んだのは、テストに失敗したために私のシステムにインストールできないMooseX::Method::Signaturesに依存するからです。私はあなたが示唆する別のアプローチを持っているかどうか気にし

    1

    1答えて

    私はコマンドラインコマンドとその引数を解析するためにマルチメソッドを使用しています。 (defmulti run (fn [command args] command)) (defmethod run :default [& _] ...) ^{:args "[command]"} (defmethod run "help" [_ & [args]]

    1

    1答えて

    大きな地図や他のものがたくさんあるアプリケーションがあり、印刷時に読みにくいので、カスタム印刷機能を作ってprint-methodと呼んでください:私は、マップは、特別な治療を必要とする種類のものではないと判断した場合、私は通常の印刷メソッドを呼び出すことができますどのように fstr1インサイド (defmethod print-method clojure.lang.PersistentArr

    7

    2答えて

    質問が些細な場合は謝罪しますが、グーグルでは私をどこにでも誘導していない場合は謝ります。 defmultiとdefmethodの一般的な構文は何ですか?私は単純なマルチメソッドを書くことができますが、私はdocstring、前後の条件、メタデータなどをどこに置くことができるのか分かりません。 私はClojureScriptよりも実際にClojureに興味がありますので、2つの違いがある場合は教えて

    5

    1答えて

    retagのパラメータがmulti-specの作成にどのように影響するのですか?私はmulti-specのドキュメントを消化するのが難しいと感じています。ドキュメント文字列から

    5

    2答えて

    ゲームをプログラミングしたいと思います。複数のエンティティにコンポーネントパターンを使用したいと思います。 interfaces/type-classes/multiple inheritanceの言語では問題ありません。 いくつかのエンティティは更新可能ですがレンダリング可能ではないものが必要ですが、いくつかは両方とも必要です。 ハスケル: class Updateable a where

    2

    2答えて

    私はいくつかの親インターフェイスのオブジェクトを返すJavaメソッドがあります。この関数が返すオブジェクトのクラスは文書化されていませんが、親インタフェースを拡張している豊富で十分に文書化されたインタフェースの階層があります。だから、例えば:私は知っていた(との安定性に自信があった)基礎となるオブジェクト場合 public class Person { public IMeal favo

    8

    1答えて

    私は例えば、異なったプリミティブ型とそのラッパークラス間の私のプログラムの行為をしたい:私は整数を試してみて、だから、両方 user=> (try-type (.intValue (int 2))) Integer nil user=> (try-type (int 2)) Integer nil をint型にもかかわらず、である、 (defmulti try-type class)

    2

    1答えて

    マルチメソッドとその実装を別々のファイルに定義しようとしています。 (ns thing.a.e (:require thing.a.b :as test)) . . . (test/foo "hello") :私はこのような何かを定義する1 (ns thing.a.b) (defn dispatch-fn [x] x) (defmulti foo dispatch-fn)