summaryrefslogtreecommitdiff
path: root/tiger-compiler/tcsh/src/tiger_object.i
blob: cd81eecd4479f64e2b2767666a6a7fd9f55ddba6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
// -*- C++ -*-

%module tiger_object

%import "tiger_ast.i"

%{
  #include <object/libobject.hh>
  #include <ast/all.hh>
  #include "swig_real_type.hh"
%}

%import "tiger_misc.i"

%rename(desugar) object_desugar;
%rename(raw_desugar) object_raw_desugar;

%inline {
ast::Ast* object_desugar(const ast::Ast& tree,
                         const object::class_names_type& class_names)
{
  return object::desugar<ast::Ast>(tree, class_names);
}
ast::Ast* object_raw_desugar(const ast::Ast& tree,
                             const object::class_names_type& class_names)
{
  return object::raw_desugar<ast::Ast>(tree, class_names);
}
}

%include "object/fwd.hh"
%include "object/libobject.hh"