lib: pull expr parsing out of timespec into constEval