LINUX.ORG.RU

История изменений

Исправление MOPKOBKA, (текущая версия) :

Как в OCaml. Если кортеж то имя не пишется. Если структура, то имя поле пишется. А обращение без указания поля приведет рано или поздно к ужасным ошибкам, они бы еще додумались через val[int] сделать обращение.

Теперь когда ты рассказал что имя поля вписывается опционально, можно сделать честное сравнение с матчингом:

if let Channel::Stable(Semver { major: 1, minor: 88, .. }) = release_info()
{
    println!("`let_chains` was stabilized in this version");
}
struct semver v = release_info();
if (info.major == 1 && info.minor == 88) 
  printf("c was stabilized");

Исправление MOPKOBKA, :

Как в OCaml. Если кортеж то имя не пишется. Если структура, то имя поле пишется.

Теперь когда ты рассказал что имя поля вписывается опционально, можно сделать честное сравнение с матчингом:

if let Channel::Stable(Semver { major: 1, minor: 88, .. }) = release_info()
{
    println!("`let_chains` was stabilized in this version");
}
struct semver v = release_info();
if (info.major == 1 && info.minor == 88) 
  printf("c was stabilized");

Исправление MOPKOBKA, :

Как в OCaml. Если кортеж то имя не пишется. Если структура, то имя поле пишется.

Теперь когда ты рассказал что имя поля вписывается опционально, можно сделать честное сравнение:

if let Channel::Stable(Semver { major: 1, minor: 88, .. }) = release_info()
{
    println!("`let_chains` was stabilized in this version");
}
struct semver v = release_info();
if (info.major == 1 && info.minor == 88) 
  printf("c was stabilized");

Исправление MOPKOBKA, :

Как в OCaml. Если кортеж то имя не пишется. Если структура, то имя поле пишется.

if let Channel::Stable(Semver { major: 1, minor: 88, .. }) = release_info()
{
    println!("`let_chains` was stabilized in this version");
}
struct semver v = release_info();
if (info.major == 1 && info.minor == 88) 
  printf("c was stabilized");

Исходная версия MOPKOBKA, :

Как в OCaml. Если кортеж то имя не пишется. Если структура, то имя поле пишется.