コード例 #1
0
ファイル: ContextVisitor.cs プロジェクト: Stg3orge/P4Projekt
        public object Visit(DeclaringParameters obj)
        {
            if (_preVisit)
            {
                if (obj.Declaration == null)
                {
                    return(null);
                }
                _parameterAdd = true;
                obj.Declaration.Accept(this);
                if (obj.DeclaringParameter != null)
                {
                    obj.DeclaringParameter.Accept(this);
                }
                else
                {
                    _parameterAdd = false;
                }
            }
            else
            {
                _symbolTable.OpenScope();
                obj.Declaration?.Accept(this);
                obj.DeclaringParameter?.Accept(this);
            }

            return(null);
        }
コード例 #2
0
ファイル: CodeGenVisitor.cs プロジェクト: Stg3orge/P4Projekt
        public object Visit(DeclaringParameters obj)
        {
            string codeString = "";

            //<DeclaringParameters> ::= <Declaration> <DeclaringParameter>

            if (obj.Declaration != null)
            {
                codeString += (string)obj.Declaration.Accept(this);
            }

            if (obj.DeclaringParameter != null)
            {
                codeString += ", ";
                codeString += (string)obj.DeclaringParameter.Accept(this);
            }

            return(codeString);
        }
コード例 #3
0
ファイル: ILCodeVisitor.cs プロジェクト: Stg3orge/P4Projekt
 public object Visit(DeclaringParameters obj)
 {
     throw new NotImplementedException();
 }