Route constructor

Route({
  1. required String path,
  2. required Component builder(
    1. ParamsContext params
    ),
})

Implementation

Route({required this.path, required this.builder}) {
  final names = <String>[];

  final pattern = path.replaceAllMapped(RegExp(r':(\w+)'), (m) {
    names.add(m.group(1)!);
    return '([^/]+)';
  });

  _paramNames = names;
  _regex = RegExp('^$pattern\$');
}