Beispiel #1
0
            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));
            }
Beispiel #2
0
                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);
                    }
                }