:- module mlds_ground_term. :- interface. :- type result ---> none ; enabled(string). :- pred parse(string, result). :- mode parse(in, out) is semidet. :- implementation. parse(String, Res) :- ( String = "none", Res = none ; ( String = "enable" ; String = "full" ), Res = enabled(String) ).