Roslynを使用して、構文的および意味的にC#ソースコードを分析するアプリケーションを作成しています。分析対象のソースコードで定義されている型ごとに、参照型(クラス)、値型(構造体)、インターフェイスのいずれであるかを保存したいと思います。
タイプのタイプの適切な/公式の用語は何ですか?
例:
class A
{
//This type's type (A's type) is 'class' (i.e. a reference type).
}
正式な名前を知りたい場合は、公式のソースであるC#言語仕様を調べてください。そこからの引用(§1.3タイプと変数;強調鉱山):
C#には、値型と参照型の2種類の型があります。[…]
C#の値型は、単純型、列挙型、構造体型、およびnull許容型にさらに分類され、C#の参照型は、クラス型、インターフェイス型、配列型、およびデリゲート型にさらに分類されます。
次に、これらのタイプのグループをカテゴリとして説明する表と、次の引用があります。
C#のタイプのカテゴリのうち5つは、ユーザー定義可能です。クラスタイプ、構造体タイプ、インターフェイスタイプ、列挙型、およびデリゲートタイプです。
後で(§4タイプで):
C#言語のタイプは、値タイプと参照タイプの2つの主要なカテゴリに分類されます。
要約すると、仕様ではそれらをタイプのカテゴリと呼んでいますが、その用語の使用法はあまり一貫していません。
型理論では、型の型は通常その種類と呼ばれます。これは主にタイプのパラメーター化の形式を説明していますが、他の分類にも使用できます。しかし、それがあなたがここで言及している種類の分類に自然に当てはまるかどうかはわかりません。C#にもそのための「公式」用語がないようです。
Roslynのソースコードで「宣言できるタイプは5種類あります」のように、「種類」を使用しているのを見てきました。しかし、これには公式に定義された用語はないと思います。私は「種類の種類」または「種類」を使用します。