File: Date.java

package info (click to toggle)
quantlib-swig 0.9.0-1
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 58,200 kB
  • ctags: 105,353
  • sloc: cpp: 1,047,001; ansic: 133,430; ml: 54,990; cs: 34,216; java: 23,659; perl: 17,882; python: 8,891; lisp: 2,337; ruby: 1,140; sh: 458; makefile: 355
file content (140 lines) | stat: -rw-r--r-- 3,671 bytes parent folder | download
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
/* ----------------------------------------------------------------------------
 * This file was automatically generated by SWIG (http://www.swig.org).
 * Version 1.3.33
 *
 * Do not make changes to this file unless you know what you are doing--modify
 * the SWIG interface file instead.
 * ----------------------------------------------------------------------------- */

package org.quantlib;

public class Date {
  private long swigCPtr;
  protected boolean swigCMemOwn;

  protected Date(long cPtr, boolean cMemoryOwn) {
    swigCMemOwn = cMemoryOwn;
    swigCPtr = cPtr;
  }

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

  protected void finalize() {
    delete();
  }

  public synchronized void delete() {
    if(swigCPtr != 0 && swigCMemOwn) {
      swigCMemOwn = false;
      QuantLibJNI.delete_Date(swigCPtr);
    }
    swigCPtr = 0;
  }

  public Date() {
    this(QuantLibJNI.new_Date__SWIG_0(), true);
  }

  public Date(int d, Month m, int y) {
    this(QuantLibJNI.new_Date__SWIG_1(d, m.swigValue(), y), true);
  }

  public Date(int serialNumber) {
    this(QuantLibJNI.new_Date__SWIG_2(serialNumber), true);
  }

  public Weekday weekday() {
    return Weekday.swigToEnum(QuantLibJNI.Date_weekday(swigCPtr, this));
  }

  public int dayOfMonth() {
    return QuantLibJNI.Date_dayOfMonth(swigCPtr, this);
  }

  public int dayOfYear() {
    return QuantLibJNI.Date_dayOfYear(swigCPtr, this);
  }

  public Month month() {
    return Month.swigToEnum(QuantLibJNI.Date_month(swigCPtr, this));
  }

  public int year() {
    return QuantLibJNI.Date_year(swigCPtr, this);
  }

  public int serialNumber() {
    return QuantLibJNI.Date_serialNumber(swigCPtr, this);
  }

  public static boolean isLeap(int y) {
    return QuantLibJNI.Date_isLeap(y);
  }

  public static Date minDate() {
    return new Date(QuantLibJNI.Date_minDate(), true);
  }

  public static Date maxDate() {
    return new Date(QuantLibJNI.Date_maxDate(), true);
  }

  public static Date todaysDate() {
    return new Date(QuantLibJNI.Date_todaysDate(), true);
  }

  public static Date endOfMonth(Date arg0) {
    return new Date(QuantLibJNI.Date_endOfMonth(Date.getCPtr(arg0), arg0), true);
  }

  public static boolean isEndOfMonth(Date arg0) {
    return QuantLibJNI.Date_isEndOfMonth(Date.getCPtr(arg0), arg0);
  }

  public static Date nextWeekday(Date arg0, Weekday arg1) {
    return new Date(QuantLibJNI.Date_nextWeekday(Date.getCPtr(arg0), arg0, arg1.swigValue()), true);
  }

  public static Date nthWeekday(long n, Weekday arg1, Month m, int y) {
    return new Date(QuantLibJNI.Date_nthWeekday(n, arg1.swigValue(), m.swigValue(), y), true);
  }

  public Date add(int days) {
    return new Date(QuantLibJNI.Date_add__SWIG_0(swigCPtr, this, days), true);
  }

  public Date subtract(int days) {
    return new Date(QuantLibJNI.Date_subtract__SWIG_0(swigCPtr, this, days), true);
  }

  public Date add(Period arg0) {
    return new Date(QuantLibJNI.Date_add__SWIG_1(swigCPtr, this, Period.getCPtr(arg0), arg0), true);
  }

  public Date subtract(Period arg0) {
    return new Date(QuantLibJNI.Date_subtract__SWIG_1(swigCPtr, this, Period.getCPtr(arg0), arg0), true);
  }

  public Date(String str, String fmt) {
    this(QuantLibJNI.new_Date__SWIG_3(str, fmt), true);
  }

  public int weekdayNumber() {
    return QuantLibJNI.Date_weekdayNumber(swigCPtr, this);
  }

  public String toString() {
    return QuantLibJNI.Date_toString(swigCPtr, this);
  }

  public String __repr__() {
    return QuantLibJNI.Date___repr__(swigCPtr, this);
  }

  public String ISO() {
    return QuantLibJNI.Date_ISO(swigCPtr, this);
  }

}