summaryrefslogtreecommitdiff
path: root/src/expr/array_store_all.i
blob: 5158a21d97bce8dd9c2f0479aafcac238d7db1d6 (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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
%{
#include "expr/array_store_all.h"
%}

#ifdef SWIGJAVA

%typemap(javabody) CVC4::ArrayStoreAll %{
  private long swigCPtr;
  protected boolean swigCMemOwn;
  private ExprManager em;

  protected $javaclassname(ExprManager em, long cPtr, boolean cMemoryOwn) {
    swigCMemOwn = cMemoryOwn;
    swigCPtr = cPtr;
    this.em = em;
  }

  protected static long getCPtr($javaclassname obj) {
    return (obj == null) ? 0 : obj.swigCPtr;
  }

  public $javaclassname(ExprManager em, ArrayType type, Expr expr) {
    this(type, expr);
    this.em = em;
  }
%}

// Workaround for https://github.com/swig/swig/commit/63a5a8af88271559a7b170794b4c61c30b8934ea
%typemap(javaconstruct) ArrayStoreAll {
  this(null, $imcall, true);
}

%typemap(javaconstruct) CVC4::ArrayStoreAll {
  this(null, $imcall, true);
}

%typemap(javaout) const CVC4::Expr& {
  return new Expr(this.em, $jnicall, false);
}

%typemap(javaout) const CVC4::ArrayType& {
  return new ArrayType(this.em, $jnicall, false);
}

%typemap(javaout) const CVC4::ArrayStoreAll& {
  return new ArrayStoreAll(this.em, $jnicall, false);
}

%javamethodmodifiers CVC4::ArrayStoreAll::ArrayStoreAll(const ArrayType& type, const Expr& expr) "private";

#endif /* SWIGJAVA */

%ignore CVC4::ArrayStoreAll::ArrayStoreAll(const ArrayStoreAll& other);
%rename(equals) CVC4::ArrayStoreAll::operator==(const ArrayStoreAll&) const;
%ignore CVC4::ArrayStoreAll::operator!=(const ArrayStoreAll&) const;
%ignore CVC4::ArrayStoreAll::operator=(const ArrayStoreAll&);
%rename(less) CVC4::ArrayStoreAll::operator<(const ArrayStoreAll&) const;
%rename(lessEqual) CVC4::ArrayStoreAll::operator<=(const ArrayStoreAll&) const;
%rename(greater) CVC4::ArrayStoreAll::operator>(const ArrayStoreAll&) const;
%rename(greaterEqual) CVC4::ArrayStoreAll::operator>=(const ArrayStoreAll&) const;
%rename(apply) CVC4::ArrayStoreAllHashFunction::operator()(const ArrayStoreAll&) const;
%ignore CVC4::operator<<(std::ostream&, const ArrayStoreAll&);

%include "expr/type.i"
%include "expr/array_store_all.h"
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback