evaluateSizeUnit function
Evaluates a string expression and returns a SizeUnit.
Parses mathematical expressions involving size units (e.g., "100px + 50%") and returns the resulting SizeUnit object. Supports arithmetic operations (+, -, *, /) and various size unit types.
Example:
final size = evaluateSizeUnit("100 + 50"); // SizeUnit representing 150
final relative = evaluateSizeUnit("50%"); // SizeUnit representing 50% of viewport
Throws an exception if the expression cannot be parsed.
Implementation
SizeUnit evaluateSizeUnit(String input) {
final tokenizer = StringTokenizer(input);
final tokens = tokenizer.tokenize();
final parser = Parser(tokens);
return parser.parseSizeUnit();
}