public override void OnAlias(DOM.Alias alias)
 {
     _namespaceResolver.ProcessAlias((Alias)alias);
     _namespaceResolver.AddAlias((Alias)alias);
     ProcessInterpolation((IPairWithInterpolation)alias);
     base.OnAlias(alias);
     Visit(alias.PairValue);
 }
Example #2
0
        private NsInfo ResolveAliasInAliasDefinition(DOM.Alias alias, NsInfo aliasDefNsInfo)
        {
            //Finding AliasDef
            var aliasDef = _context.NamespaceResolver.GetAliasDefinition(alias.Name);

            if (aliasDef == null)
            {
                //Report Error
                _context.AddError(CompilerErrorFactory.AliasIsNotDefined(alias, aliasDefNsInfo.ModuleMember.Module.FileName));
                return(null);
            }
            return(ResolveAliasesInAliasDefinition(aliasDef));
        }
        public override void OnAlias(DOM.Alias node)
        {
            if (_valueNodeExpected.Peek())
            {
                _sb.Append("\t");
                _sb.Append(node.GetType().Name);
                _sb.Append(" `");
                _sb.Append(node.Name);
                _sb.Append("`");

                if (node.Value != null)
                {
                    _sb.Append("= `");
                    _sb.Append(node.Value);
                    _sb.Append("`");
                }
            }
            else
            {
                PrintNodeStart(node);
            }

            if (node.Entities.Count + node.Arguments.Count > 0)
            {
                _sb.AppendLine(":");
                _indent++;
            }

            base.OnAlias(node);

            if (node.Entities.Count + node.Arguments.Count > 0)
            {
                _indent--;
            }
            else if (!_valueNodeExpected.Peek())
            {
                _sb.AppendLine();
            }
        }
Example #4
0
 private void CheckAliasArguments(DOM.Alias alias, DOM.Antlr.AliasDefinition aliasDef, NsInfo documentNsInfo)
 {
     CheckCompatibilityWithParameters(alias, aliasDef, documentNsInfo);
     CheckForUnexpectedArguments(alias, aliasDef, documentNsInfo);
 }