Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/ResolvExpr/ConversionCost.h

    rea6332d r0c6596f  
    1616#pragma once
    1717
     18#include <functional>         // for function
     19
    1820#include "Cost.h"             // for Cost
    1921#include "SynTree/Visitor.h"  // for Visitor
     
    2123
    2224namespace SymTab {
    23 class Indexer;
     25        class Indexer;
    2426}  // namespace SymTab
    2527
    2628namespace ResolvExpr {
    27 class TypeEnvironment;
     29        class TypeEnvironment;
    2830
    2931        class ConversionCost : public Visitor {
     
    3739                virtual void visit(PointerType *pointerType);
    3840                virtual void visit(ArrayType *arrayType);
     41                virtual void visit(ReferenceType *refType);
    3942                virtual void visit(FunctionType *functionType);
    4043                virtual void visit(StructInstType *aggregateUseType);
     
    5356                const TypeEnvironment &env;
    5457        };
     58
     59        typedef std::function<int(Type *, Type *, const TypeEnvironment &, const SymTab::Indexer &)> PtrsFunction;
     60        Cost convertToReferenceCost( Type * src, ReferenceType * dest, const SymTab::Indexer & indexer, const TypeEnvironment & env, PtrsFunction func );
    5561} // namespace ResolvExpr
    5662
Note: See TracChangeset for help on using the changeset viewer.