expand method
The basic rules this block stands for. Called once per block.
Implementation
@override
List<Rule> expand() {
final begin = _escape(open);
final end = _escape(close);
if (!nested) {
return [RegionRule(begin: begin, end: end, scope: scope, rules: rules)];
}
// The inner region lists itself among its rules.
final inner = <Rule>[...rules];
final region = RegionRule(begin: begin, end: end, rules: inner);
inner.add(region);
return [
RegionRule(
begin: begin,
end: end,
scope: scope,
rules: [...rules, region],
),
];
}