的元素,类型为A的一个简单的归纳定义: Inductive A: Set := mkA : nat-> A.
(*get ID of A*)
Function getId (a: A) : nat := match a with mkA n => n end.
和子类型的定义: (* filter that test ID of *A* is 0 *)
Function filter
我使用Oracle数据库和我有这种类型的亚型有: CREATE TYPE t_foo AS OBJECT
(id INTEGER)
NOT FINAL;
CREATE TYPE t_foo1 UNDER t_foo() NOT FINAL;
我有t_foo在那里我还可以存储的t_foo CREATE TABLE foo OF t_foo;
INSERT INTO foo VALUE
我有多个属于一起的输入(在相同的时钟等采样),但在逻辑上不是一个矢量(即不是并行总线)我需要修改的代码。 此前,他们被定义为 type my_type is array (my_width - 1 downto 0) of std_logic;
signal my_signal : my_type;
直到现在,为此,我一直用这个: subtype my_subtype is std_logi
我知道这是可能创造一个定义的范围的一个亚型,e.g: subtype ADDRESS is UNSIGNED range (32 downto 0);
是否有可能建立一个参数化类型/子类型?基本上保留'32'的值由用户在制作ADDRESS类型的变量时定义。例如: subtype ADDRESS is UNSIGNED range (f(x)) downto 0;
其中f()是在另一个预定义