コード例 #1
0
            // Define scopes

            protected override object?Visit(Expression.StructType sty)
            {
                symbolTable.PushScope(ScopeKind.Struct);
                base.Visit(sty);
                symbolTable.PopScope();
                return(null);
            }
コード例 #2
0
ファイル: TypeCheck.cs プロジェクト: LPeter1997/YoakkeLang
 protected override object?Visit(Expression.StructType sty)
 {
     // NOTE: We don't visit declarations here to avoid recursion
     foreach (var field in sty.Fields)
     {
         Visit(field);
     }
     return(null);
 }
コード例 #3
0
ファイル: TypeEval.cs プロジェクト: LPeter1997/YoakkeLang
        // Implementation details //////////////////////////////////////////////

        protected override Type?Visit(Expression.StructType sty) => Type.Type_;