Конвертация

Здесь описаны функции для конвертации данных из одного представления в другое.

Функции

Json( obj o ) str

Функция Json преобразует переменную типа obj в json строку.

JsonToObj( str s ) obj

Функция JsonToObj преобразует json строку в переменную типа obj.

run str {
  return Json(JsonToObj(`{
         "int": 1234,
         "str": "value",
         "float": -45.67,
          "list":[{"on": true},
            "sub 2",
            "sub 3",
            {
                "q": "OK"
            }]
    }`))
}
// Result {"float":-45.67,"int":1234,"list":[{"on":true},"sub 2","sub 3",{"q":"OK"}],"str":"value"}

StructDecode( buf b, struct s )

Функция StructDecode преобразует двоичные данные переменной типа buf в значения полей указанной структурной переменной. Двоичные данные должны быть созданы функцией StructEncode.

  time t
  StructDecode(StructEncode(Now()), t)

StructEncode( struct s ) buf

Функция StructEncode преобразует переменную структурного типа в двоичный вид и сохраняет результат в переменную типа buf. Сохраняются только поля типа: int,bool,char,float,buf,str. Поля остальных типов пропускаются.

struct tmp {
    str head
    int i
}

run str {
  tmp t1 = {head: `HEADER`, i: -356}
  buf bout = StructEncode(t1)
  ...
}

Last updated