やりたいこと パターンマッチをバキバキに仕上げてくれるのが、whenから始まるguard構文。標準で様々な演算子と関数が使えるようになっている。やや量が多いので、しっかりと使いこなせるようにするため汎用性の高そうなguardを一通り書いてみた。 演算子 演算子は以下のものが利用可能。詳細はこちら参照 比較演算子(==,!=,===,!==,>,<,<=,>=) 論理演算子(and,or)と否定演算子(not,!) 算術演算子(+,-,*,/) 左側がリテラルの場合の<>と++ in演算子 チェック関数 で、以下がメインコンテンツ。標準ライブラリから様々なチェック関数が提供されているので、使いそうなものを片っ端から使ってみた。また、いくつかElixirの変数型仕様によるハマりどころもあったので、メモ書き程度だが付記しておく。 defmodule Demo.GuardTest do use D