evaluateSpacingUnit function

SpacingUnit evaluateSpacingUnit(
  1. String input
)

Evaluates a string expression and returns a SpacingUnit.

Parses mathematical expressions involving spacing units and returns the resulting SpacingUnit object. Supports arithmetic operations and various spacing unit types (fixed, relative, viewport-based).

Example:

final spacing = evaluateSpacingUnit("16"); // SpacingUnit representing 16 pixels
final calc = evaluateSpacingUnit("8 * 2"); // SpacingUnit representing 16

Throws an exception if the expression cannot be parsed.

Implementation

SpacingUnit evaluateSpacingUnit(String input) {
  final tokenizer = StringTokenizer(input);
  final tokens = tokenizer.tokenize();
  final parser = Parser(tokens);
  return parser.parseSpacingUnit();
}