source: src/SymTab/GenImplicitCall.hpp @ da87eaf

Last change on this file since da87eaf was 4e2f1b2, checked in by Andrew Beach <ajbeach@…>, 8 months ago

Clean-up of GenImplicitCall? module. Changing the return type for consistency spilled out into some other files, but that should also saves some operations. The other big one is the template instances were reduced to one and then the templates removed.

  • Property mode set to 100644
File size: 1.1 KB
Line 
1//
2// Cforall Version 1.0.0 Copyright (C) 2018 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// GenImplicitCall.hpp -- Generate code for implicit operator calls.
8//
9// Author           : Andrew Beach
10// Created On       : Fri Apr 14 14:29:00 2023
11// Last Modified By : Andrew Beach
12// Last Modified On : Fri Apr 14 14:29:00 2023
13// Update Count     : 0
14//
15
16#pragma once
17
18#include "InitTweak/InitTweak.h"  // for InitExpander
19
20namespace SymTab {
21
22/// Enum for loop direction
23enum LoopDirection { LoopBackward, LoopForward };
24
25/// Returns a generated call expression to function fname with srcParam and
26/// dstParam. Intended to be used with generated ?=?, ?{}, and ^?{} calls.
27const ast::Stmt * genImplicitCall(
28        InitTweak::InitExpander & srcParam, const ast::Expr * dstParam,
29        const CodeLocation & loc, const std::string & fname, const ast::ObjectDecl * obj,
30        LoopDirection forward = LoopForward
31);
32
33} // namespace SymTab
34
35// Local Variables: //
36// tab-width: 4 //
37// mode: c++ //
38// compile-command: "make install" //
39// End: //
Note: See TracBrowser for help on using the repository browser.