Changeset 7b5694d
- Timestamp:
- Jan 17, 2023, 2:05:52 PM (15 months ago)
- Branches:
- ADT, ast-experimental, master
- Children:
- fed6a0f
- Parents:
- e563edf
- Location:
- src
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
src/AST/Expr.cpp
re563edf r7b5694d 30 30 #include "Common/SemanticError.h" 31 31 #include "GenPoly/Lvalue.h" // for referencesPermissable 32 #include "ResolvExpr/ typeops.h"// for extractResultType32 #include "ResolvExpr/Unify.h" // for extractResultType 33 33 #include "Tuples/Tuples.h" // for makeTupleType 34 34 -
src/GenPoly/GenPoly.cc
re563edf r7b5694d 490 490 } 491 491 492 /// Flattens a list of types. 493 // There is another flattenList in Unify. 492 494 void flattenList( vector<ast::ptr<ast::Type>> const & src, 493 495 vector<ast::ptr<ast::Type>> & out ) { -
src/ResolvExpr/Unify.h
re563edf r7b5694d 85 85 const ast::TypeEnvironment & env = {} ); 86 86 87 /// Creates the type represented by the list of returnVals in a FunctionType. 88 /// The caller owns the return value. 89 Type * extractResultType( FunctionType * functionType ); 90 /// Creates or extracts the type represented by returns in a `FunctionType`. 91 ast::ptr<ast::Type> extractResultType( const ast::FunctionType * func ); 92 93 std::vector<ast::ptr<ast::Type>> flattenList( 94 const std::vector<ast::ptr<ast::Type>> & src, ast::TypeEnvironment & env 95 ); 96 87 97 } // namespace ResolvExpr 88 98 -
src/ResolvExpr/typeops.h
re563edf r7b5694d 108 108 const ast::TypeEnvironment & env ); 109 109 110 /// creates the type represented by the list of returnVals in a FunctionType. The caller owns the return value.111 Type * extractResultType( FunctionType * functionType );112 /// Creates or extracts the type represented by the list of returns in a `FunctionType`.113 ast::ptr<ast::Type> extractResultType( const ast::FunctionType * func );114 115 110 // in CommonType.cc 116 111 Type * commonType( Type * type1, Type * type2, bool widenFirst, bool widenSecond, const SymTab::Indexer & indexer, TypeEnvironment & env, const OpenVarSet & openVars ); … … 119 114 ast::TypeEnvironment & env, ast::AssertionSet & need, ast::AssertionSet & have, 120 115 const ast::OpenVarSet & open, WidenMode widen, const ast::SymbolTable & symtab 121 );122 // in Unify.cc123 std::vector< ast::ptr< ast::Type > > flattenList(124 const std::vector< ast::ptr< ast::Type > > & src, ast::TypeEnvironment & env125 116 ); 126 117 … … 206 197 } 207 198 208 209 210 199 // in TypeEnvironment.cc 211 200 bool isFtype( const Type * type ); -
src/SynTree/ApplicationExpr.cc
re563edf r7b5694d 5 5 // file "LICENCE" distributed with Cforall. 6 6 // 7 // ApplicationExpr.cc .cc--7 // ApplicationExpr.cc -- 8 8 // 9 9 // Author : Richard C. Bilson … … 26 26 #include "Expression.h" // for ParamEntry, ApplicationExpr, Expression 27 27 #include "InitTweak/InitTweak.h" // for getFunction 28 #include "ResolvExpr/ typeops.h"// for extractResultType28 #include "ResolvExpr/Unify.h" // for extractResultType 29 29 #include "Type.h" // for Type, PointerType, FunctionType 30 30 -
src/Validate/FixReturnTypes.cpp
re563edf r7b5694d 20 20 #include "AST/Type.hpp" 21 21 #include "CodeGen/CodeGenerator.h" 22 #include "ResolvExpr/ typeops.h"22 #include "ResolvExpr/Unify.h" 23 23 24 24 namespace ast {
Note: See TracChangeset
for help on using the changeset viewer.