`default_nettypenone// Technically the value assignment could be anything, but most tools default to a 32-bit logic assigning MODE_A = 0 and MODE_B = 1typedefenum{MODE_A,MODE_B}Mode_t;typedefenumlogic[1:0]{READ=2'd1,WRITE=2'd2,NONE=2'd0}Operation_t;moduleExample(inputlogicrawMode,outputlogic[1:0]rawOperation);Mode_tmode;Operation_toperation;// cast into a strongly typed variantassignmode=Mode_t'(rawMode);assignrawOperation=operation;always_combbegincase(mode)MODE_A:operation=READ;MODE_B:operation=WRITE;default:operation=NONE;endcaseendendmodule