Ruby 2.0.0p247(2013-06-27revision41674)

- Main Page
- Modules
- Data Structures
- Files

- File List
- Globals

Data Structures | Macros | Functions | Variables
date_parse.c File Reference
`#include "ruby.h"`
`#include "ruby/encoding.h"`
`#include "ruby/re.h"`
`#include <ctype.h>`
Include dependency graph for date_parse.c:

Go to the source code of this file.

## Data Structures
struct | zone

## Macros
#define | sizeof_array(o) (sizeof o / sizeof o[0])
#define | f_negate(x) rb_funcall(x, rb_intern("-@"), 0)
#define | f_add(x, y) rb_funcall(x, '+', 1, y)
#define | f_sub(x, y) rb_funcall(x, '-', 1, y)
#define | f_mul(x, y) rb_funcall(x, '*', 1, y)
#define | f_div(x, y) rb_funcall(x, '/', 1, y)
#define | f_idiv(x, y) rb_funcall(x, rb_intern("div"), 1, y)
#define | f_mod(x, y) rb_funcall(x, '%', 1, y)
#define | f_expt(x, y) rb_funcall(x, rb_intern("**"), 1, y)
#define | f_lt_p(x, y) rb_funcall(x, '<', 1, y)
#define | f_gt_p(x, y) rb_funcall(x, '>', 1, y)
#define | f_le_p(x, y) rb_funcall(x, rb_intern("<="), 1, y)
#define | f_ge_p(x, y) rb_funcall(x, rb_intern(">="), 1, y)
#define | f_to_s(x) rb_funcall(x, rb_intern("to_s"), 0)
#define | f_match(r, s) rb_funcall(r, rb_intern("match"), 1, s)
#define | f_aref(o, i) rb_funcall(o, rb_intern("[]"), 1, i)
#define | f_aref2(o, i, j) rb_funcall(o, rb_intern("[]"), 2, i, j)
#define | f_begin(o, i) rb_funcall(o, rb_intern("begin"), 1, i)
#define | f_end(o, i) rb_funcall(o, rb_intern("end"), 1, i)
#define | f_aset(o, i, v) rb_funcall(o, rb_intern("[]="), 2, i, v)
#define | f_aset2(o, i, j, v) rb_funcall(o, rb_intern("[]="), 3, i, j, v)
#define | f_sub_bang(s, r, x) rb_funcall(s, rb_intern("sub!"), 2, r, x)
#define | f_gsub_bang(s, r, x) rb_funcall(s, rb_intern("gsub!"), 2, r, x)
#define | set_hash(k, v) rb_hash_aset(hash, ID2SYM(rb_intern(k)), v)
#define | ref_hash(k) rb_hash_aref(hash, ID2SYM(rb_intern(k)))
#define | del_hash(k) rb_hash_delete(hash, ID2SYM(rb_intern(k)))
#define | cstr2num(s) rb_cstr_to_inum(s, 10, 0)
#define | str2num(s) rb_str_to_inum(s, 10, 0)
#define | issign(c) ((c) == '-' || (c) == '+')
#define | asp_string() rb_str_new(" ", 1)
#define | DECDIGIT "0123456789"
#define | DAYS "sunday|monday|tuesday|wednesday|thursday|friday|saturday"
#define | MONTHS "january|february|march|april|may|june|july|august|september|october|november|december"
#define | ABBR_DAYS "sun|mon|tue|wed|thu|fri|sat"
#define | ABBR_MONTHS "jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec"
#define | REGCOMP(pat, opt)
#define | REGCOMP_0(pat) REGCOMP(pat, 0)
#define | REGCOMP_I(pat) REGCOMP(pat, ONIG_OPTION_IGNORECASE)
#define | MATCH(s, p, c)
#define | SUBS(s, p, c)
#define | STD " standard time"
#define | DST " daylight time"
#define | DST " dst"
#define | HAVE_ALPHA (1<<0)
#define | HAVE_DIGIT (1<<1)
#define | HAVE_DASH (1<<2)
#define | HAVE_DOT (1<<3)
#define | HAVE_SLASH (1<<4)
#define | HAVE_ELEM_P(x) ((check_class(str) & (x)) == (x))
#define | SNUM 14
#define | SNUM 17
#define | SNUM 5
#define | iso8601_bas_time_cb iso8601_ext_time_cb
#define | SNUM 8
#define | SNUM 5
#define | SNUM 4
#define | SNUM 8
#define | SNUM 7
#define | SNUM 9

## Functions
static void | s3e (VALUE hash, VALUE y, VALUE m, VALUE d, int bc)
static VALUE | regcomp (const char *source, long len, int opt)
static int | match (VALUE str, VALUE pat, VALUE hash, int(*cb)(VALUE, VALUE))
static int | subx (VALUE str, VALUE rep, VALUE pat, VALUE hash, int(*cb)(VALUE, VALUE))
VALUE | date_zone_to_diff (VALUE str)
static int | day_num (VALUE s)
static int | mon_num (VALUE s)
static int | parse_day_cb (VALUE m, VALUE hash)
static int | parse_day (VALUE str, VALUE hash)
static int | parse_time2_cb (VALUE m, VALUE hash)
static int | parse_time_cb (VALUE m, VALUE hash)
static int | parse_time (VALUE str, VALUE hash)
static int | parse_eu_cb (VALUE m, VALUE hash)
static int | parse_eu (VALUE str, VALUE hash)
static int | parse_us_cb (VALUE m, VALUE hash)
static int | parse_us (VALUE str, VALUE hash)
static int | parse_iso_cb (VALUE m, VALUE hash)
static int | parse_iso (VALUE str, VALUE hash)
static int | parse_iso21_cb (VALUE m, VALUE hash)
static int | parse_iso21 (VALUE str, VALUE hash)
static int | parse_iso22_cb (VALUE m, VALUE hash)
static int | parse_iso22 (VALUE str, VALUE hash)
static int | parse_iso23_cb (VALUE m, VALUE hash)
static int | parse_iso23 (VALUE str, VALUE hash)
static int | parse_iso24_cb (VALUE m, VALUE hash)
static int | parse_iso24 (VALUE str, VALUE hash)
static int | parse_iso25_cb (VALUE m, VALUE hash)
static int | parse_iso25 (VALUE str, VALUE hash)
static int | parse_iso26_cb (VALUE m, VALUE hash)
static int | parse_iso26 (VALUE str, VALUE hash)
static int | parse_iso2 (VALUE str, VALUE hash)
static int | gengo (int c)
static int | parse_jis_cb (VALUE m, VALUE hash)
static int | parse_jis (VALUE str, VALUE hash)
static int | parse_vms11_cb (VALUE m, VALUE hash)
static int | parse_vms11 (VALUE str, VALUE hash)
static int | parse_vms12_cb (VALUE m, VALUE hash)
static int | parse_vms12 (VALUE str, VALUE hash)
static int | parse_vms (VALUE str, VALUE hash)
static int | parse_sla_cb (VALUE m, VALUE hash)
static int | parse_sla (VALUE str, VALUE hash)
static int | parse_dot_cb (VALUE m, VALUE hash)
static int | parse_dot (VALUE str, VALUE hash)
static int | parse_year_cb (VALUE m, VALUE hash)
static int | parse_year (VALUE str, VALUE hash)
static int | parse_mon_cb (VALUE m, VALUE hash)
static int | parse_mon (VALUE str, VALUE hash)
static int | parse_mday_cb (VALUE m, VALUE hash)
static int | parse_mday (VALUE str, VALUE hash)
static int | n2i (const char *s, long f, long w)
static int | parse_ddd_cb (VALUE m, VALUE hash)
static int | parse_ddd (VALUE str, VALUE hash)
static int | parse_bc_cb (VALUE m, VALUE hash)
static int | parse_bc (VALUE str, VALUE hash)
static int | parse_frag_cb (VALUE m, VALUE hash)
static int | parse_frag (VALUE str, VALUE hash)
static unsigned | check_class (VALUE s)
VALUE | date__parse (VALUE str, VALUE comp)
static VALUE | comp_year69 (VALUE y)
static VALUE | comp_year50 (VALUE y)
static VALUE | sec_fraction (VALUE f)
static int | iso8601_ext_datetime_cb (VALUE m, VALUE hash)
static int | iso8601_ext_datetime (VALUE str, VALUE hash)
static int | iso8601_bas_datetime_cb (VALUE m, VALUE hash)
static int | iso8601_bas_datetime (VALUE str, VALUE hash)
static int | iso8601_ext_time_cb (VALUE m, VALUE hash)
static int | iso8601_ext_time (VALUE str, VALUE hash)
static int | iso8601_bas_time (VALUE str, VALUE hash)
VALUE | date__iso8601 (VALUE str)
static int | rfc3339_cb (VALUE m, VALUE hash)
static int | rfc3339 (VALUE str, VALUE hash)
VALUE | date__rfc3339 (VALUE str)
static int | xmlschema_datetime_cb (VALUE m, VALUE hash)
static int | xmlschema_datetime (VALUE str, VALUE hash)
static int | xmlschema_time_cb (VALUE m, VALUE hash)
static int | xmlschema_time (VALUE str, VALUE hash)
static int | xmlschema_trunc_cb (VALUE m, VALUE hash)
static int | xmlschema_trunc (VALUE str, VALUE hash)
VALUE | date__xmlschema (VALUE str)
static int | rfc2822_cb (VALUE m, VALUE hash)
static int | rfc2822 (VALUE str, VALUE hash)
VALUE | date__rfc2822 (VALUE str)
static int | httpdate_type1_cb (VALUE m, VALUE hash)
static int | httpdate_type1 (VALUE str, VALUE hash)
static int | httpdate_type2_cb (VALUE m, VALUE hash)
static int | httpdate_type2 (VALUE str, VALUE hash)
static int | httpdate_type3_cb (VALUE m, VALUE hash)
static int | httpdate_type3 (VALUE str, VALUE hash)
VALUE | date__httpdate (VALUE str)
static int | jisx0301_cb (VALUE m, VALUE hash)
static int | jisx0301 (VALUE str, VALUE hash)
VALUE | date__jisx0301 (VALUE str)

## Variables
static const char * | abbr_days []
static const char * | abbr_months []
static struct zone | zones_source []

## Macro Definition Documentation

#define ABBR_DAYS "sun|mon|tue|wed|thu|fri|sat"

Definition at line 228 of file date_parse.c.

Referenced by httpdate_type1(), httpdate_type3(), parse_day(), and rfc2822().

#define ABBR_MONTHS "jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec"

Definition at line 229 of file date_parse.c.

Referenced by httpdate_type1(), httpdate_type2(), httpdate_type3(), parse_eu(), parse_mon(), parse_us(), parse_vms11(), parse_vms12(), and rfc2822().

#define asp_string | ( | ) |  | rb_str_new(" ", 1)

Definition at line 58 of file date_parse.c.

Referenced by date__parse().

#define cstr2num | ( |  | s) |  | rb_cstr_to_inum(s, 10, 0)

Definition at line 44 of file date_parse.c.

Referenced by date_zone_to_diff(), and s3e().

#define DAYS "sunday|monday|tuesday|wednesday|thursday|friday|saturday"

Definition at line 226 of file date_parse.c.

Referenced by httpdate_type2().

#define DECDIGIT "0123456789"

Definition at line 66 of file date_parse.c.

Referenced by s3e().

#define del_hash | ( |  | k) |  | rb_hash_delete(hash, ID2SYM(rb_intern(k)))

Definition at line 42 of file date_parse.c.

Referenced by date__parse().

#define DST " daylight time"

Referenced by date_zone_to_diff().

#define DST " dst"

#define f_add | ( |  | x,
|  |  | y
| ) |  | rb_funcall(x, '+', 1, y)

Definition at line 15 of file date_parse.c.

Referenced by comp_year50(), comp_year69(), date__parse(), date_zone_to_diff(), jisx0301_cb(), and parse_jis_cb().

#define f_aref | ( |  | o,
|  |  | i
| ) |  | rb_funcall(o, rb_intern("[]"), 1, i)

Definition at line 31 of file date_parse.c.

Referenced by date_zone_to_diff().

#define f_aref2 | ( |  | o,
|  |  | i,
|  |  | j
| ) |  | rb_funcall(o, rb_intern("[]"), 2, i, j)

Definition at line 32 of file date_parse.c.

#define f_aset | ( |  | o,
|  |  | i,
|  |  | v
| ) |  | rb_funcall(o, rb_intern("[]="), 2, i, v)

Definition at line 35 of file date_parse.c.

#define f_aset2 | ( |  | o,
|  |  | i,
|  |  | j,
|  |  | v
| ) |  | rb_funcall(o, rb_intern("[]="), 3, i, j, v)

Definition at line 36 of file date_parse.c.

Referenced by subx().

#define f_begin | ( |  | o,
|  |  | i
| ) |  | rb_funcall(o, rb_intern("begin"), 1, i)

Definition at line 33 of file date_parse.c.

Referenced by subx().

#define f_div | ( |  | x,
|  |  | y
| ) |  | rb_funcall(x, '/', 1, y)

Definition at line 18 of file date_parse.c.

#define f_end | ( |  | o,
|  |  | i
| ) |  | rb_funcall(o, rb_intern("end"), 1, i)

Definition at line 34 of file date_parse.c.

Referenced by subx().

#define f_expt | ( |  | x,
|  |  | y
| ) |  | rb_funcall(x, rb_intern("**"), 1, y)

Definition at line 21 of file date_parse.c.

Referenced by date_zone_to_diff(), parse_ddd_cb(), parse_time2_cb(), and sec_fraction().

#define f_ge_p | ( |  | x,
|  |  | y
| ) |  | rb_funcall(x, rb_intern(">="), 1, y)

Definition at line 26 of file date_parse.c.

Referenced by comp_year50(), comp_year69(), date__parse(), httpdate_type2_cb(), and parse_frag_cb().

#define f_gsub_bang | ( |  | s,
|  |  | r,
|  |  | x
| ) |  | rb_funcall(s, rb_intern("gsub!"), 2, r, x)

Definition at line 38 of file date_parse.c.

Referenced by date__parse().

#define f_gt_p | ( |  | x,
|  |  | y
| ) |  | rb_funcall(x, '>', 1, y)

Definition at line 24 of file date_parse.c.

#define f_idiv | ( |  | x,
|  |  | y
| ) |  | rb_funcall(x, rb_intern("div"), 1, y)

Definition at line 19 of file date_parse.c.

#define f_le_p | ( |  | x,
|  |  | y
| ) |  | rb_funcall(x, rb_intern("<="), 1, y)

Definition at line 25 of file date_parse.c.

Referenced by date__parse(), httpdate_type2_cb(), and parse_frag_cb().

#define f_lt_p | ( |  | x,
|  |  | y
| ) |  | rb_funcall(x, '<', 1, y)

Definition at line 23 of file date_parse.c.

#define f_match | ( |  | r,
|  |  | s
| ) |  | rb_funcall(r, rb_intern("match"), 1, s)

Definition at line 30 of file date_parse.c.

Referenced by match(), parse_iso25(), parse_iso26(), parse_time_cb(), and subx().

#define f_mod | ( |  | x,
|  |  | y
| ) |  | rb_funcall(x, '%', 1, y)

Definition at line 20 of file date_parse.c.

#define f_mul | ( |  | x,
|  |  | y
| ) |  | rb_funcall(x, '*', 1, y)

Definition at line 17 of file date_parse.c.

Referenced by date_zone_to_diff().

#define f_negate | ( |  | x) |  | rb_funcall(x, rb_intern("-@"), 0)

Definition at line 14 of file date_parse.c.

Referenced by date__parse(), and date_zone_to_diff().

#define f_sub | ( |  | x,
|  |  | y
| ) |  | rb_funcall(x, '-', 1, y)

Definition at line 16 of file date_parse.c.

#define f_sub_bang | ( |  | s,
|  |  | r,
|  |  | x
| ) |  | rb_funcall(s, rb_intern("sub!"), 2, r, x)

Definition at line 37 of file date_parse.c.

#define f_to_s | ( |  | x) |  | rb_funcall(x, rb_intern("to_s"), 0)

Definition at line 28 of file date_parse.c.

Referenced by s3e().

#define HAVE_ALPHA (1<<0)

Definition at line 2144 of file date_parse.c.

Referenced by check_class(), and date__parse().

#define HAVE_DASH (1<<2)

Definition at line 2146 of file date_parse.c.

Referenced by check_class(), and date__parse().

#define HAVE_DIGIT (1<<1)

Definition at line 2145 of file date_parse.c.

Referenced by check_class(), and date__parse().

#define HAVE_DOT (1<<3)

Definition at line 2147 of file date_parse.c.

Referenced by check_class(), and date__parse().

#define HAVE_ELEM_P | ( |  | x) |  | ((check_class(str) & (x)) == (x))

Definition at line 2172 of file date_parse.c.

Referenced by date__parse().

#define HAVE_SLASH (1<<4)

Definition at line 2148 of file date_parse.c.

Referenced by check_class(), and date__parse().

#define iso8601_bas_time_cb iso8601_ext_time_cb

Definition at line 2573 of file date_parse.c.

Referenced by iso8601_bas_time().

#define issign | ( |  | c) |  | ((c) == '-' || (c) == '+')

Definition at line 57 of file date_parse.c.

Referenced by date_zone_to_diff(), and s3e().

#define MATCH | ( |  | s,
|  |  | p,
|  |  | c
| ) |  |

Value:
{ \
return match(s, p, hash, c); \
}

Definition at line 267 of file date_parse.c.

Referenced by httpdate_type1(), httpdate_type2(), httpdate_type3(), iso8601_bas_datetime(), iso8601_bas_time(), iso8601_ext_datetime(), iso8601_ext_time(), jisx0301(), rfc2822(), rfc3339(), xmlschema_datetime(), xmlschema_time(), and xmlschema_trunc().

#define MONTHS "january|february|march|april|may|june|july|august|september|october|november|december"

Definition at line 227 of file date_parse.c.

#define ref_hash | ( |  | k) |  | rb_hash_aref(hash, ID2SYM(rb_intern(k)))

Definition at line 41 of file date_parse.c.

Referenced by date__parse(), and parse_frag_cb().

#define REGCOMP | ( |  | pat,
|  |  | opt
| ) |  |

Value:
{ \
if (NIL_P(pat)) \
pat = regcomp(pat##_source, sizeof pat##_source - 1, opt); \
}

Definition at line 258 of file date_parse.c.

#define REGCOMP_0 | ( |  | pat) |  | REGCOMP(pat, 0)

Definition at line 264 of file date_parse.c.

Referenced by date__parse(), parse_iso(), parse_iso23(), parse_iso24(), parse_iso25(), parse_iso26(), and parse_year().

#define REGCOMP_I | ( |  | pat) |  | REGCOMP(pat, ONIG_OPTION_IGNORECASE)

Definition at line 265 of file date_parse.c.

Referenced by httpdate_type1(), httpdate_type2(), httpdate_type3(), iso8601_bas_datetime(), iso8601_bas_time(), iso8601_ext_datetime(), iso8601_ext_time(), jisx0301(), parse_bc(), parse_day(), parse_ddd(), parse_dot(), parse_eu(), parse_frag(), parse_iso21(), parse_iso22(), parse_jis(), parse_mday(), parse_mon(), parse_sla(), parse_time(), parse_time_cb(), parse_us(), parse_vms11(), parse_vms12(), rfc2822(), rfc3339(), xmlschema_datetime(), xmlschema_time(), and xmlschema_trunc().

#define set_hash | ( |  | k,
|  |  | v
| ) |  | rb_hash_aset(hash, ID2SYM(rb_intern(k)), v)

Definition at line 40 of file date_parse.c.

Referenced by date__parse(), httpdate_type1_cb(), httpdate_type2_cb(), httpdate_type3_cb(), iso8601_bas_datetime_cb(), iso8601_ext_datetime_cb(), iso8601_ext_time_cb(), jisx0301_cb(), parse_bc_cb(), parse_day_cb(), parse_ddd_cb(), parse_frag_cb(), parse_iso21_cb(), parse_iso22_cb(), parse_iso23_cb(), parse_iso24_cb(), parse_iso25_cb(), parse_iso26_cb(), parse_jis_cb(), parse_mday_cb(), parse_mon_cb(), parse_time2_cb(), parse_time_cb(), parse_year_cb(), rfc2822_cb(), rfc3339_cb(), s3e(), xmlschema_datetime_cb(), xmlschema_time_cb(), and xmlschema_trunc_cb().

#define sizeof_array | ( |  | o) |  | (sizeof o / sizeof o[0])

Definition at line 12 of file date_parse.c.

Referenced by date_zone_to_diff(), day_num(), and mon_num().

#define SNUM 14

Definition at line 3054 of file date_parse.c.

Referenced by httpdate_type1_cb(), httpdate_type2_cb(), httpdate_type3_cb(), iso8601_bas_datetime_cb(), iso8601_ext_datetime_cb(), iso8601_ext_time_cb(), jisx0301_cb(), rfc2822_cb(), rfc3339_cb(), xmlschema_datetime_cb(), xmlschema_time_cb(), and xmlschema_trunc_cb().

#define SNUM 17

Definition at line 3054 of file date_parse.c.

#define SNUM 5

Definition at line 3054 of file date_parse.c.

#define SNUM 8

Definition at line 3054 of file date_parse.c.

#define SNUM 8

Definition at line 3054 of file date_parse.c.

#define SNUM 5

Definition at line 3054 of file date_parse.c.

#define SNUM 4

Definition at line 3054 of file date_parse.c.

#define SNUM 8

Definition at line 3054 of file date_parse.c.

#define SNUM 8

Definition at line 3054 of file date_parse.c.

#define SNUM 8

Definition at line 3054 of file date_parse.c.

#define SNUM 7

Definition at line 3054 of file date_parse.c.

#define SNUM 9

Definition at line 3054 of file date_parse.c.

#define STD " standard time"

Referenced by date_zone_to_diff().

#define str2num | ( |  | s) |  | rb_str_to_inum(s, 10, 0)

Definition at line 45 of file date_parse.c.

Referenced by date_zone_to_diff(), httpdate_type1_cb(), httpdate_type2_cb(), httpdate_type3_cb(), iso8601_bas_datetime_cb(), iso8601_ext_datetime_cb(), iso8601_ext_time_cb(), jisx0301_cb(), parse_ddd_cb(), parse_frag_cb(), parse_iso21_cb(), parse_iso22_cb(), parse_iso23_cb(), parse_iso24_cb(), parse_iso25_cb(), parse_iso26_cb(), parse_jis_cb(), parse_mday_cb(), parse_time2_cb(), parse_year_cb(), rfc2822_cb(), rfc3339_cb(), sec_fraction(), xmlschema_datetime_cb(), xmlschema_time_cb(), and xmlschema_trunc_cb().

#define SUBS | ( |  | s,
|  |  | p,
|  |  | c
| ) |  |

Value:
{ \
return subx(s, asp_string(), p, hash, c); \
}

Definition at line 309 of file date_parse.c.

Referenced by parse_bc(), parse_day(), parse_ddd(), parse_dot(), parse_eu(), parse_frag(), parse_iso(), parse_iso21(), parse_iso22(), parse_iso23(), parse_iso24(), parse_iso25(), parse_iso26(), parse_jis(), parse_mday(), parse_mon(), parse_sla(), parse_time(), parse_us(), parse_vms11(), parse_vms12(), and parse_year().

## Function Documentation

static unsigned check_class | ( | VALUE | s) |  |
| static

Definition at line 2151 of file date_parse.c.

References HAVE_ALPHA, HAVE_DASH, HAVE_DIGIT, HAVE_DOT, HAVE_SLASH, i, RSTRING_LEN, and RSTRING_PTR.

static VALUE comp_year50 | ( | VALUE | y) |  |
| static

Definition at line 2353 of file date_parse.c.

References f_add, f_ge_p, and INT2FIX.

Referenced by rfc2822_cb().

static VALUE comp_year69 | ( | VALUE | y) |  |
| static

Definition at line 2345 of file date_parse.c.

References f_add, f_ge_p, and INT2FIX.

Referenced by httpdate_type2_cb(), iso8601_bas_datetime_cb(), and iso8601_ext_datetime_cb().

VALUE date__httpdate | ( | VALUE | str) |  |

Definition at line 3031 of file date_parse.c.

References hash(), httpdate_type1(), httpdate_type2(), httpdate_type3(), rb_backref_get(), rb_backref_set(), rb_hash_new(), and rb_match_busy().

Referenced by date_s__httpdate().

VALUE date__iso8601 | ( | VALUE | str) |  |

Definition at line 2600 of file date_parse.c.

References hash(), iso8601_bas_datetime(), iso8601_bas_time(), iso8601_ext_datetime(), iso8601_ext_time(), rb_backref_get(), rb_backref_set(), rb_hash_new(), and rb_match_busy().

Referenced by date__jisx0301(), and date_s__iso8601().

VALUE date__jisx0301 | ( | VALUE | str) |  |

Definition at line 3105 of file date_parse.c.

References date__iso8601(), hash(), jisx0301(), rb_backref_get(), rb_backref_set(), rb_hash_new(), and rb_match_busy().

Referenced by date_s__jisx0301().

VALUE date__parse | ( | VALUE | str,
|  | VALUE | comp
| ) |  |

Definition at line 2179 of file date_parse.c.

References asp_string, date_zone_to_diff(), del_hash, f_add, f_ge_p, f_gsub_bang, f_le_p, f_negate, hash(), HAVE_ALPHA, HAVE_DASH, HAVE_DIGIT, HAVE_DOT, HAVE_ELEM_P, HAVE_SLASH, INT2FIX, NIL_P, parse_bc(), parse_day(), parse_ddd(), parse_dot(), parse_eu(), parse_frag(), parse_iso(), parse_iso2(), parse_jis(), parse_mday(), parse_mon(), parse_sla(), parse_time(), parse_us(), parse_vms(), parse_year(), Qnil, rb_backref_get(), rb_backref_set(), rb_hash_new(), rb_match_busy(), rb_str_dup(), ref_hash, REGCOMP_0, RTEST, and set_hash.

Referenced by date_s__parse_internal().

VALUE date__rfc2822 | ( | VALUE | str) |  |

Definition at line 2885 of file date_parse.c.

References hash(), rb_backref_get(), rb_backref_set(), rb_hash_new(), rb_match_busy(), and rfc2822().

Referenced by date_s__rfc2822().

VALUE date__rfc3339 | ( | VALUE | str) |  |

Definition at line 2668 of file date_parse.c.

References hash(), rb_backref_get(), rb_backref_set(), rb_hash_new(), rb_match_busy(), and rfc3339().

Referenced by date_s__rfc3339().

VALUE date__xmlschema | ( | VALUE | str) |  |

Definition at line 2814 of file date_parse.c.

References hash(), rb_backref_get(), rb_backref_set(), rb_hash_new(), rb_match_busy(), xmlschema_datetime(), xmlschema_time(), and xmlschema_trunc().

Referenced by date_s__xmlschema().

VALUE date_zone_to_diff | ( | VALUE | str) |  |

Definition at line 420 of file date_parse.c.

References ALLOCA_N, cstr2num, DST, f_add, f_aref, f_expt, f_mul, f_negate, i, INT2FIX, issign, LONG2NUM, name, NIL_P, zone::offset, p, Qnil, RB_GC_GUARD, rb_gc_register_mark_object(), rb_hash_aset(), rb_hash_new(), rb_rational_new2, rb_str_new(), rb_str_new2, RSTRING_LEN, RSTRING_PTR, sizeof_array, STD, str2num, strchr(), strlen(), T_STRING, and TYPE.

Referenced by date__parse(), date__strptime_internal(), iso8601_bas_datetime_cb(), iso8601_ext_datetime_cb(), iso8601_ext_time_cb(), jisx0301_cb(), offset_to_sec(), parse_ddd_cb(), rfc2822_cb(), rfc3339_cb(), xmlschema_datetime_cb(), xmlschema_time_cb(), and xmlschema_trunc_cb().

static int day_num | ( | VALUE | s) |  |
| static

Definition at line 612 of file date_parse.c.

References abbr_days, i, RSTRING_PTR, sizeof_array, and strncasecmp.

Referenced by httpdate_type1_cb(), httpdate_type2_cb(), httpdate_type3_cb(), parse_day_cb(), and rfc2822_cb().

static int gengo | ( | int | c) |  |
| static

Definition at line 1332 of file date_parse.c.

Referenced by jisx0301_cb(), and parse_jis_cb().

static int httpdate_type1 | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2927 of file date_parse.c.

References ABBR_DAYS, ABBR_MONTHS, httpdate_type1_cb(), MATCH, Qnil, and REGCOMP_I.

Referenced by date__httpdate().

static int httpdate_type1_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2902 of file date_parse.c.

References day_num(), i, INT2FIX, mon_num(), Qnil, rb_reg_nth_match(), set_hash, SNUM, and str2num.

Referenced by httpdate_type1().

static int httpdate_type2 | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2974 of file date_parse.c.

References ABBR_MONTHS, DAYS, httpdate_type2_cb(), MATCH, Qnil, and REGCOMP_I.

Referenced by date__httpdate().

static int httpdate_type2_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2946 of file date_parse.c.

References comp_year69(), day_num(), f_ge_p, f_le_p, i, INT2FIX, mon_num(), Qnil, rb_reg_nth_match(), set_hash, SNUM, and str2num.

Referenced by httpdate_type2().

static int httpdate_type3 | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 3016 of file date_parse.c.

References ABBR_DAYS, ABBR_MONTHS, httpdate_type3_cb(), MATCH, Qnil, and REGCOMP_I.

Referenced by date__httpdate().

static int httpdate_type3_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2993 of file date_parse.c.

References day_num(), i, INT2FIX, mon_num(), Qnil, rb_reg_nth_match(), set_hash, SNUM, and str2num.

Referenced by httpdate_type3().

static int iso8601_bas_datetime | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2526 of file date_parse.c.

References iso8601_bas_datetime_cb(), MATCH, Qnil, and REGCOMP_I.

Referenced by date__iso8601().

static int iso8601_bas_datetime_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2457 of file date_parse.c.

References comp_year69(), date_zone_to_diff(), i, NIL_P, Qnil, rb_reg_nth_match(), RSTRING_LEN, RSTRING_PTR, sec_fraction(), set_hash, SNUM, and str2num.

Referenced by iso8601_bas_datetime().

static int iso8601_bas_time | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2588 of file date_parse.c.

References iso8601_bas_time_cb, MATCH, Qnil, and REGCOMP_I.

Referenced by date__iso8601().

static int iso8601_ext_datetime | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2437 of file date_parse.c.

References iso8601_ext_datetime_cb(), MATCH, Qnil, and REGCOMP_I.

Referenced by date__iso8601().

static int iso8601_ext_datetime_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2371 of file date_parse.c.

References comp_year69(), date_zone_to_diff(), i, NIL_P, Qnil, rb_reg_nth_match(), RSTRING_LEN, RSTRING_PTR, sec_fraction(), set_hash, SNUM, and str2num.

Referenced by iso8601_ext_datetime().

static int iso8601_ext_time | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2576 of file date_parse.c.

References iso8601_ext_time_cb(), MATCH, Qnil, and REGCOMP_I.

Referenced by date__iso8601().

static int iso8601_ext_time_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2548 of file date_parse.c.

References date_zone_to_diff(), i, NIL_P, Qnil, rb_reg_nth_match(), sec_fraction(), set_hash, SNUM, and str2num.

Referenced by iso8601_ext_time().

static int jisx0301 | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 3091 of file date_parse.c.

References jisx0301_cb(), MATCH, Qnil, and REGCOMP_I.

Referenced by date__jisx0301().

static int jisx0301_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 3057 of file date_parse.c.

References date_zone_to_diff(), f_add, gengo(), i, INT2FIX, NIL_P, Qnil, rb_reg_nth_match(), RSTRING_PTR, sec_fraction(), set_hash, SNUM, and str2num.

Referenced by jisx0301().

static int match | ( | VALUE | str,
|  | VALUE | pat,
|  | VALUE | hash,
|  | int(*)(VALUE, VALUE) | cb
| ) |  |
| static

Definition at line 273 of file date_parse.c.

References f_match, hash(), and NIL_P.

Referenced by match_alloc(), match_getter(), onig_search_gpos(), rb_reg_s_last_match(), rb_reg_search(), rb_str_sub_bang(), rb_str_subpat(), rb_str_subpat_set(), reg_named_capture_assign_gen(), ruby_strtod(), scan_once(), and str_gsub().

static int mon_num | ( | VALUE | s) |  |
| static

Definition at line 623 of file date_parse.c.

References abbr_months, i, RSTRING_PTR, sizeof_array, and strncasecmp.

Referenced by httpdate_type1_cb(), httpdate_type2_cb(), httpdate_type3_cb(), parse_eu_cb(), parse_mon_cb(), parse_us_cb(), parse_vms11_cb(), parse_vms12_cb(), and rfc2822_cb().

static int n2i | ( | const char * | s,
|  | long | f,
|  | long | w
| ) |  |
| static

Definition at line 1790 of file date_parse.c.

References i, and v.

Referenced by parse_ddd_cb().

static int parse_bc | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2050 of file date_parse.c.

References parse_bc_cb(), Qnil, REGCOMP_I, and SUBS.

Referenced by date__parse().

static int parse_bc_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2043 of file date_parse.c.

References Qtrue, and set_hash.

Referenced by parse_bc().

static int parse_day | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 644 of file date_parse.c.

References ABBR_DAYS, parse_day_cb(), Qnil, REGCOMP_I, and SUBS.

Referenced by date__parse().

static int parse_day_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 634 of file date_parse.c.

References day_num(), INT2FIX, rb_reg_nth_match(), and set_hash.

Referenced by parse_day().

static int parse_ddd | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2008 of file date_parse.c.

References parse_ddd_cb(), Qnil, REGCOMP_I, and SUBS.

Referenced by date__parse().

static int parse_ddd_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1805 of file date_parse.c.

References ALLOCA_N, buf, date_zone_to_diff(), f_expt, INT2FIX, LONG2NUM, n2i(), NIL_P, Qfalse, RB_GC_GUARD, rb_rational_new2, rb_reg_nth_match(), rb_str_new2, RSTRING_LEN, RSTRING_PTR, set_hash, str2num, and strchr().

Referenced by parse_ddd().

static int parse_dot | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1610 of file date_parse.c.

References parse_dot_cb(), Qnil, REGCOMP_I, and SUBS.

Referenced by date__parse().

static int parse_dot_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1592 of file date_parse.c.

References rb_reg_nth_match(), and s3e().

Referenced by parse_dot().

static int parse_eu | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 915 of file date_parse.c.

References ABBR_MONTHS, parse_eu_cb(), Qnil, REGCOMP_I, and SUBS.

Referenced by date__parse().

static int parse_eu_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 882 of file date_parse.c.

References INT2FIX, mon_num(), NIL_P, rb_reg_nth_match(), RSTRING_PTR, and s3e().

Referenced by parse_eu().

static int parse_frag | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2084 of file date_parse.c.

References parse_frag_cb(), Qnil, REGCOMP_I, and SUBS.

Referenced by date__parse().

static int parse_frag_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2061 of file date_parse.c.

References f_ge_p, f_le_p, INT2FIX, NIL_P, rb_reg_nth_match(), ref_hash, set_hash, and str2num.

Referenced by parse_frag().

static int parse_iso | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1057 of file date_parse.c.

References parse_iso_cb(), Qnil, REGCOMP_0, and SUBS.

Referenced by date__parse().

static int parse_iso2 | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1311 of file date_parse.c.

References parse_iso21(), parse_iso22(), parse_iso23(), parse_iso24(), parse_iso25(), and parse_iso26().

Referenced by date__parse().

static int parse_iso21 | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1095 of file date_parse.c.

References parse_iso21_cb(), Qnil, REGCOMP_I, and SUBS.

Referenced by parse_iso2().

static int parse_iso21_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1077 of file date_parse.c.

References NIL_P, rb_reg_nth_match(), set_hash, and str2num.

Referenced by parse_iso21().

static int parse_iso22 | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1125 of file date_parse.c.

References parse_iso22_cb(), Qnil, REGCOMP_I, and SUBS.

Referenced by parse_iso2().

static int parse_iso22_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1115 of file date_parse.c.

References rb_reg_nth_match(), set_hash, and str2num.

Referenced by parse_iso22().

static int parse_iso23 | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1160 of file date_parse.c.

References parse_iso23_cb(), Qnil, REGCOMP_0, and SUBS.

Referenced by parse_iso2().

static int parse_iso23_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1145 of file date_parse.c.

References NIL_P, rb_reg_nth_match(), set_hash, and str2num.

Referenced by parse_iso23().

static int parse_iso24 | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1195 of file date_parse.c.

References parse_iso24_cb(), Qnil, REGCOMP_0, and SUBS.

Referenced by parse_iso2().

static int parse_iso24_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1180 of file date_parse.c.

References NIL_P, rb_reg_nth_match(), set_hash, and str2num.

Referenced by parse_iso24().

static int parse_iso25 | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1229 of file date_parse.c.

References f_match, NIL_P, parse_iso25_cb(), Qnil, REGCOMP_0, and SUBS.

Referenced by parse_iso2().

static int parse_iso25_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1215 of file date_parse.c.

References rb_reg_nth_match(), set_hash, and str2num.

Referenced by parse_iso25().

static int parse_iso26 | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1275 of file date_parse.c.

References f_match, NIL_P, parse_iso26_cb(), Qnil, REGCOMP_0, and SUBS.

Referenced by parse_iso2().

static int parse_iso26_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1265 of file date_parse.c.

References rb_reg_nth_match(), set_hash, and str2num.

Referenced by parse_iso26().

static int parse_iso_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1039 of file date_parse.c.

References rb_reg_nth_match(), and s3e().

Referenced by parse_iso().

static int parse_jis | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1367 of file date_parse.c.

References parse_jis_cb(), Qnil, REGCOMP_I, and SUBS.

Referenced by date__parse().

static int parse_jis_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1347 of file date_parse.c.

References f_add, gengo(), INT2FIX, rb_reg_nth_match(), RSTRING_PTR, set_hash, and str2num.

Referenced by parse_jis().

static int parse_mday | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1770 of file date_parse.c.

References parse_mday_cb(), Qnil, REGCOMP_I, and SUBS.

Referenced by date__parse().

static int parse_mday_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1760 of file date_parse.c.

References rb_reg_nth_match(), set_hash, and str2num.

Referenced by parse_mday().

static int parse_mon | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1740 of file date_parse.c.

References ABBR_MONTHS, parse_mon_cb(), Qnil, REGCOMP_I, and SUBS.

Referenced by date__parse().

static int parse_mon_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1730 of file date_parse.c.

References INT2FIX, mon_num(), rb_reg_nth_match(), and set_hash.

Referenced by parse_mon().

static int parse_sla | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1502 of file date_parse.c.

References parse_sla_cb(), Qnil, REGCOMP_I, and SUBS.

Referenced by date__parse().

static int parse_sla_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1484 of file date_parse.c.

References rb_reg_nth_match(), and s3e().

Referenced by parse_sla().

static int parse_time | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 740 of file date_parse.c.

References parse_time_cb(), Qnil, REGCOMP_I, and SUBS.

Referenced by date__parse().

static int parse_time2_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 664 of file date_parse.c.

References f, f_expt, INT2FIX, LONG2NUM, NIL_P, NUM2INT, p, rb_rational_new2, rb_reg_nth_match(), RSTRING_LEN, RSTRING_PTR, set_hash, and str2num.

Referenced by parse_time_cb().

static int parse_time_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 707 of file date_parse.c.

References f_match, NIL_P, parse_time2_cb(), Qnil, rb_reg_nth_match(), REGCOMP_I, and set_hash.

Referenced by parse_time().

static int parse_us | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 993 of file date_parse.c.

References ABBR_MONTHS, parse_us_cb(), Qnil, REGCOMP_I, and SUBS.

Referenced by date__parse().

static int parse_us_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 959 of file date_parse.c.

References INT2FIX, mon_num(), NIL_P, rb_reg_nth_match(), RSTRING_PTR, and s3e().

Referenced by parse_us().

static int parse_vms | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1471 of file date_parse.c.

References parse_vms11(), and parse_vms12().

Referenced by date__parse().

static int parse_vms11 | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1407 of file date_parse.c.

References ABBR_MONTHS, parse_vms11_cb(), Qnil, REGCOMP_I, and SUBS.

Referenced by parse_vms().

static int parse_vms11_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1387 of file date_parse.c.

References INT2FIX, mon_num(), rb_reg_nth_match(), and s3e().

Referenced by parse_vms11().

static int parse_vms12 | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1449 of file date_parse.c.

References ABBR_MONTHS, parse_vms12_cb(), Qnil, REGCOMP_I, and SUBS.

Referenced by parse_vms().

static int parse_vms12_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1429 of file date_parse.c.

References INT2FIX, mon_num(), rb_reg_nth_match(), and s3e().

Referenced by parse_vms12().

static int parse_year | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1710 of file date_parse.c.

References parse_year_cb(), Qnil, REGCOMP_0, and SUBS.

Referenced by date__parse().

static int parse_year_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 1700 of file date_parse.c.

References rb_reg_nth_match(), set_hash, and str2num.

Referenced by parse_year().

static VALUE regcomp | ( | const char * | source,
|  | long | len,
|  | int | opt
| ) |  |
| static

Definition at line 249 of file date_parse.c.

References rb_gc_register_mark_object(), and rb_reg_new().

static int rfc2822 | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2869 of file date_parse.c.

References ABBR_DAYS, ABBR_MONTHS, MATCH, Qnil, REGCOMP_I, and rfc2822_cb().

Referenced by date__rfc2822().

static int rfc2822_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2840 of file date_parse.c.

References comp_year50(), date_zone_to_diff(), day_num(), i, INT2FIX, mon_num(), NIL_P, Qnil, rb_reg_nth_match(), RSTRING_LEN, set_hash, SNUM, and str2num.

Referenced by rfc2822().

static int rfc3339 | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2654 of file date_parse.c.

References MATCH, Qnil, REGCOMP_I, and rfc3339_cb().

Referenced by date__rfc3339().

static int rfc3339_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2628 of file date_parse.c.

References date_zone_to_diff(), i, NIL_P, Qnil, rb_reg_nth_match(), sec_fraction(), set_hash, SNUM, and str2num.

Referenced by rfc3339().

static void s3e | ( | VALUE | hash,
|  | VALUE | y,
|  | VALUE | m,
|  | VALUE | d,
|  | int | bc
| ) |  |
| static

Definition at line 69 of file date_parse.c.

References ALLOCA_N, bp, buf, c, cstr2num, DECDIGIT, f_to_s, id, issign, NIL_P, Qfalse, Qnil, Qtrue, rb_str_new(), RSTRING_LEN, RSTRING_PTR, set_hash, T_STRING, and TYPE.

Referenced by parse_dot_cb(), parse_eu_cb(), parse_iso_cb(), parse_sla_cb(), parse_us_cb(), parse_vms11_cb(), and parse_vms12_cb().

static VALUE sec_fraction | ( | VALUE | f) |  |
| static

Definition at line 2361 of file date_parse.c.

References f_expt, INT2FIX, LONG2NUM, rb_rational_new2, RSTRING_LEN, and str2num.

Referenced by iso8601_bas_datetime_cb(), iso8601_ext_datetime_cb(), iso8601_ext_time_cb(), jisx0301_cb(), rfc3339_cb(), xmlschema_datetime_cb(), and xmlschema_time_cb().

static int subx | ( | VALUE | str,
|  | VALUE | rep,
|  | VALUE | pat,
|  | VALUE | hash,
|  | int(*)(VALUE, VALUE) | cb
| ) |  |
| static

Definition at line 288 of file date_parse.c.

References f_aset2, f_begin, f_end, f_match, hash(), INT2FIX, LONG2NUM, NIL_P, and NUM2LONG.

static int xmlschema_datetime | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2718 of file date_parse.c.

References MATCH, Qnil, REGCOMP_I, and xmlschema_datetime_cb().

Referenced by date__xmlschema().

static int xmlschema_datetime_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2685 of file date_parse.c.

References date_zone_to_diff(), i, NIL_P, Qnil, rb_reg_nth_match(), sec_fraction(), set_hash, SNUM, and str2num.

Referenced by xmlschema_datetime().

static int xmlschema_time | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2761 of file date_parse.c.

References MATCH, Qnil, REGCOMP_I, and xmlschema_time_cb().

Referenced by date__xmlschema().

static int xmlschema_time_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2735 of file date_parse.c.

References date_zone_to_diff(), i, NIL_P, Qnil, rb_reg_nth_match(), sec_fraction(), set_hash, SNUM, and str2num.

Referenced by xmlschema_time().

static int xmlschema_trunc | ( | VALUE | str,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2802 of file date_parse.c.

References MATCH, Qnil, REGCOMP_I, and xmlschema_trunc_cb().

Referenced by date__xmlschema().

static int xmlschema_trunc_cb | ( | VALUE | m,
|  | VALUE | hash
| ) |  |
| static

Definition at line 2776 of file date_parse.c.

References date_zone_to_diff(), i, NIL_P, Qnil, rb_reg_nth_match(), set_hash, SNUM, and str2num.

Referenced by xmlschema_trunc().

## Variable Documentation

const char* abbr_days[]
| static

Initial value:
= {
"sun", "mon", "tue", "wed",
"thu", "fri", "sat"
}

Definition at line 47 of file date_parse.c.

Referenced by day_num().

const char* abbr_months[]
| static

Initial value:
= {
"jan", "feb", "mar", "apr", "may", "jun",
"jul", "aug", "sep", "oct", "nov", "dec"
}

Definition at line 52 of file date_parse.c.

Referenced by mon_num().

struct zone zones_source[]
| static

Definition at line 341 of file date_parse.c.