public override TreePattern Visit(MapPatternNode node, TreePattern state) { var pairs = ImmutableArray <TreeMapPatternPair> .Empty; foreach (var pair in node.Pairs.Nodes) { pairs = pairs.Add(new TreeMapPatternPair(_parent.Visit(pair.Key), Visit(pair.Value))); } return(new TreeMapPattern(CreateAlias(node), pairs)); }
public override void Visit(MapPatternNode node) { base.Visit(node); var alias = node.Alias; if (alias != null && !alias.NameToken.IsMissing) { _scope.Define(alias.MutKeywordToken != null ? SyntaxSymbolKind.Mutable : SyntaxSymbolKind.Immutable, null, alias, alias.NameToken.Text); } }