如何同时生成两个变量?

时间:2016-01-20 10:17:39

标签: specman

我有一个结构,它有两个字段X和Y,我有几个保留它们,我想在结构本身内同时生成它们几次。

我的需求更加复杂,但这是我面临的主要问题。 我们如何同时生成两个字段?

示例:

struct example {
   X : int;
   Y : int;

   keep X < Y;
   keep Y < 10;
   keep X+Y > 5;

   do_something(cnt : int) is { 
      for i from 1 to cnt {
         gen X and Y;
         print X, Y;
      };
   };
};    

1 个答案:

答案 0 :(得分:1)

由于gen me不起作用,您只需在example中声明do_something(...)类型的变量并生成:

  do_something(cnt : int) is { 
      for i from 1 to cnt {
         var obj : example;
         gen obj;
         X = obj.X;
         Y = obj.Y;
         print X, Y;
      };
   };