source: src/ResolvExpr/ExplodedArg.hpp @ e37db112

ADTast-experimentalenumforall-pointer-decayjacob/cs343-translationpthread-emulationqualifiedEnum
Last change on this file since e37db112 was 432ce7a, checked in by Aaron Moss <a3moss@…>, 5 years ago

Port CandidateFinder::postvisit for UntypedExpr?, stub dependencies

  • Property mode set to 100644
File size: 1.2 KB
Line 
1//
2// Cforall Version 1.0.0 Copyright (C) 2015 University of Waterloo
3//
4// The contents of this file are covered under the licence agreement in the
5// file "LICENCE" distributed with Cforall.
6//
7// ExplodedArg.hpp --
8//
9// Author           : Aaron B. Moss
10// Created On       : Tue Jun 11 16:18:00 2019
11// Last Modified By : Aaron B. Moss
12// Last Modified On : Tue Jun 11 16:18:00 2019
13// Update Count     : 1
14//
15
16#pragma once
17
18#include <vector>
19
20#include "Candidate.hpp"            // for Candidate, CandidateList
21#include "Cost.h"                   // for Cost
22#include "AST/Expr.hpp"
23#include "AST/Node.hpp"             // for ptr
24#include "AST/TypeEnvironment.hpp"  // for TypeEnvironment
25#include "AST/SymbolTable.hpp"      // for SymbolTable
26
27namespace ResolvExpr {
28
29/// Pre-exploded argument
30struct ExplodedArg {
31        ast::TypeEnvironment env;
32        Cost cost;
33        std::vector< ast::ptr<ast::Expr> > exprs;
34
35        ExplodedArg() : env(), cost( Cost::zero ), exprs() {}
36        ExplodedArg( const Candidate & arg, const ast::SymbolTable & symtab );
37       
38        ExplodedArg( ExplodedArg && ) = default;
39        ExplodedArg & operator= ( ExplodedArg && ) = default;
40};
41
42}
43
44// Local Variables: //
45// tab-width: 4 //
46// mode: c++ //
47// compile-command: "make install" //
48// End: //
Note: See TracBrowser for help on using the repository browser.