#!/usr/bin/perl
# Idiom #295 String to Enum
use feature 'say';
use constant { RED => 1, GREEN => 2, BLUE => 3 };
say 'BLUE is ', BLUE;
say 'GREEN is ', GREEN;
say 'RED is ', RED;
print "TryStrToEnum('Green') is ", TryStrToEnum
('Green'),"\n";
say 'names are case sensitive';
say 'name conversion by TryStrToEnum is not case sensitive';
IyEvdXNyL2Jpbi9wZXJsCgojIElkaW9tICMyOTUgU3RyaW5nIHRvIEVudW0KCnVzZSBmZWF0dXJlICdzYXknOwoKdXNlIGNvbnN0YW50IHsgUkVEID0+IDEsIEdSRUVOID0+IDIsIEJMVUUgPT4gMyB9OwoKc3ViIFRyeVN0clRvRW51bSB7IGV2YWwgdWMgc2hpZnQgfQoKc2F5ICdCTFVFICBpcyAnLCBCTFVFOwpzYXkgJ0dSRUVOIGlzICcsIEdSRUVOOwpzYXkgJ1JFRCAgIGlzICcsIFJFRDsKCnByaW50ICJUcnlTdHJUb0VudW0oJ0dyZWVuJykgaXMgIiwgVHJ5U3RyVG9FbnVtKCdHcmVlbicpLCJcbiI7CgpzYXkgJ25hbWVzIGFyZSBjYXNlIHNlbnNpdGl2ZSc7CnNheSAnbmFtZSBjb252ZXJzaW9uIGJ5IFRyeVN0clRvRW51bSBpcyBub3QgY2FzZSBzZW5zaXRpdmUnOwo=