Packages

A hardcore language for buildling extreme systems

Current section

Files

Jump to
gloom src affinity.erl
Raw

src/affinity.erl

-module(affinity).
-compile([no_auto_import, nowarn_unused_vars]).
-export([affinity_max/2]).
-export_type([gloom_affinity/0]).
-type gloom_affinity() :: nothing | everything | something.
-spec affinity_max(gloom_affinity(), gloom_affinity()) -> gloom_affinity().
affinity_max(Left, Right) ->
case {Left, Right} of
{nothing, _} ->
Left;
{_, nothing} ->
Right;
{everything, everything} ->
Left;
{everything, something} ->
Left;
{something, everything} ->
Right;
{something, something} ->
Left
end.