Генератор
Проектов

Проект stypes

Проект демонстрирует простые типы и их значения.

В утилите после заголовка перед разделом main размещено описание типов - идентификаторы с префиксом "t_". Каждое описание начинается с ключевого слова type, далее идет идентификатор типа, потом после символа двоеточия идентификатор базового типа, т.е. типа, предопределенного в системе.

В разделе main представлены два блока с описаниями инициализированных константами переменных и операторами печати в консоль их значений. В первом блоке в описаниях используются базовые типы, во втором блоке - определенные выше типы. Обратите внимание на типы double и t_double. Базовый тип double предполагает при печати три знака после десятичной точки. Определенный нами тип t_double с опцией /frac=6 задает режим преобразования в текст с точностью 6 знаков после десятичной точки.

Файл stypes.gen:

project stypes
  /version="01.001"
  /firm="УСТ"
  /http="http://www.ustech.ru"
  /email="managers@ustech.ru"

utility stypes

Файл stypes.utility:

utility stypes:"SIMPLE Types"

type t_short : short;
type t_ushort : ushort;
type t_int : int;
type t_uint : uint;
type t_long : long;
type t_ulong : ulong;
type t_double : double;
  /frac=6
type t_stime : stime;
type t_ltime : ltime;
type t_date : date;
type t_datetime : datetime;
type t_lmoney : lmoney;
type t_lmoney3 : lmoney3;

main
{ { var
      short s := -123S,
      ushort su := 123SU,
      int i := -123456,
      uint iu := 123456U,
      long l := -12345678901234L,
      ulong lu := 12345678901234LU,
      double d := -12345678.123,
      stime st := 2359S,
      ltime lt := 235959,
      date dt := 20150317,
      datetime dtm := 20150317235959L,
      lmoney lm := 1234567890123L,
      lmoney3 lm3 := 1234567890123L;

    dprint("short s=",s,"\n");
    dprint("ushort su=",su,"\n");
    dprint("int i=",i,"\n");
    dprint("uint iu=",iu,"\n");
    dprint("long l=",l,"\n");
    dprint("ulong lu=",lu,"\n");
    dprint("double d=",d,"\n");
    dprint("stime st=",st,"\n");
    dprint("ltime lt=",lt,"\n");
    dprint("date dt=",dt,"\n");
    dprint("datetime dtm=",dtm,"\n");
    dprint("lmoney lm=",lm,"\n");
    dprint("lmoney3 lm3=",lm3,"\n");
  }

  { var
      t_short s := -123S,
      t_ushort su := 123SU,
      t_int i := -123456,
      t_uint iu := 123456U,
      t_long l := -12345678901234L,
      t_ulong lu := 12345678901234LU,
      t_double d := -12345678.123456,
      t_stime st := 2359S,
      t_ltime lt := 235959,
      t_date dt := 20150317,
      t_datetime dtm := 20150317235959L,
      t_lmoney lm := 1234567890123L,
      t_lmoney3 lm3 := 1234567890123L;

    dprint("short s=",s,"\n");
    dprint("ushort su=",su,"\n");
    dprint("int i=",i,"\n");
    dprint("uint iu=",iu,"\n");
    dprint("long l=",l,"\n");
    dprint("ulong lu=",lu,"\n");
    dprint("double d=",d,"\n");
    dprint("stime st=",st,"\n");
    dprint("ltime lt=",lt,"\n");
    dprint("date dt=",dt,"\n");
    dprint("datetime dtm=",dtm,"\n");
    dprint("lmoney lm=",lm,"\n");
    dprint("lmoney3 lm3=",lm3,"\n");
  }
}
Скачать проект stypes