2017-01-25 12 views
1

永続の章でテンプレートの展開を説明する、イェソドの本は、私がこれのnewtype宣言を読み取る方法はかなりわからないタイプの家族が

newtype Key Person = PersonKey (BackendKey SqlBackend) 

のように見える何かを持っている: PersonKey aものです( はその定義を見つけることができなかった)PersonKeyちょうど普通の タイプまたは値のコンストラクタJust/Nothing/Left /などです。 ?

答えて

1

さてさて、最初の少しだけを簡単にするために、のは、それをふりを聞かせては言った:この場合、

newtype KeyPerson = PersonKey (BackendKey SqlBackend) 

を、KeyPersonは「型コンストラクタ」だろう、とPersonKeyは次のようになり、「データコンストラクタ。」私たちはここでそれらの両方を作成しています。 PersonKeyデータコンストラクタは、タイプBackendKey SqlBackendの値を保持します。これは、他の場所に存在し、ここから参照する必要があります。この場合

は、我々は通常、物事は少しより複雑になり、関連するタイプ(別名型家族)、だ:newtype Key Personは、私たちがPersonタイプに関連したKeyを定義している」という意味しかし、我々はまだ作成しています。 PersonKeyデータコンストラクタと同じように。

+2

Michael Snoymanが送信した電子メール – Grisha

関連する問題