date 3.0.1 → 3.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ext/date/date_core.c +296 -88
- metadata +7 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d8e8e4c427833f2948ff528def0a31d95b84f1fa977afef755e9fb086ac8c84f
|
4
|
+
data.tar.gz: f0f4c810b24a50a1b3b6d766b34099b1dcecaee43bb0bac57c8ea818b2c8626d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5935548cb2bcf6eb8cb9f46275add4120033355c43c374722bc10be2cb30e90eedfae3333578687fa6a1ba2f10085ca83dea30fa32c3e75f3e347a770a203820
|
7
|
+
data.tar.gz: 11fd276dae330c4f6b437e9331b779875ac5ceb05929ab6204b04abcaed107e25421fc6ed32c5b4f58e884972318efef1bf761095a33cc32b1efedf5091ad320
|
data/ext/date/date_core.c
CHANGED
@@ -4322,12 +4322,37 @@ date_s_strptime(int argc, VALUE *argv, VALUE klass)
|
|
4322
4322
|
|
4323
4323
|
VALUE date__parse(VALUE str, VALUE comp);
|
4324
4324
|
|
4325
|
+
static size_t
|
4326
|
+
get_limit(VALUE opt)
|
4327
|
+
{
|
4328
|
+
if (!NIL_P(opt)) {
|
4329
|
+
VALUE limit = rb_hash_aref(opt, ID2SYM(rb_intern("limit")));
|
4330
|
+
if (NIL_P(limit)) return SIZE_MAX;
|
4331
|
+
return NUM2SIZET(limit);
|
4332
|
+
}
|
4333
|
+
return 128;
|
4334
|
+
}
|
4335
|
+
|
4336
|
+
static void
|
4337
|
+
check_limit(VALUE str, VALUE opt)
|
4338
|
+
{
|
4339
|
+
StringValue(str);
|
4340
|
+
size_t slen = RSTRING_LEN(str);
|
4341
|
+
size_t limit = get_limit(opt);
|
4342
|
+
if (slen > limit) {
|
4343
|
+
rb_raise(rb_eArgError,
|
4344
|
+
"string length (%"PRI_SIZE_PREFIX"u) exceeds the limit %"PRI_SIZE_PREFIX"u", slen, limit);
|
4345
|
+
}
|
4346
|
+
}
|
4347
|
+
|
4325
4348
|
static VALUE
|
4326
4349
|
date_s__parse_internal(int argc, VALUE *argv, VALUE klass)
|
4327
4350
|
{
|
4328
|
-
VALUE vstr, vcomp, hash;
|
4351
|
+
VALUE vstr, vcomp, hash, opt;
|
4329
4352
|
|
4330
|
-
rb_scan_args(argc, argv, "11", &vstr, &vcomp);
|
4353
|
+
rb_scan_args(argc, argv, "11:", &vstr, &vcomp, &opt);
|
4354
|
+
if (!NIL_P(opt)) argc--;
|
4355
|
+
check_limit(vstr, opt);
|
4331
4356
|
StringValue(vstr);
|
4332
4357
|
if (!rb_enc_str_asciicompat_p(vstr))
|
4333
4358
|
rb_raise(rb_eArgError,
|
@@ -4342,7 +4367,7 @@ date_s__parse_internal(int argc, VALUE *argv, VALUE klass)
|
|
4342
4367
|
|
4343
4368
|
/*
|
4344
4369
|
* call-seq:
|
4345
|
-
* Date._parse(string[, comp=true]) -> hash
|
4370
|
+
* Date._parse(string[, comp=true], limit: 128) -> hash
|
4346
4371
|
*
|
4347
4372
|
* Parses the given representation of date and time, and returns a
|
4348
4373
|
* hash of parsed elements. This method does not function as a
|
@@ -4353,6 +4378,10 @@ date_s__parse_internal(int argc, VALUE *argv, VALUE klass)
|
|
4353
4378
|
* it full.
|
4354
4379
|
*
|
4355
4380
|
* Date._parse('2001-02-03') #=> {:year=>2001, :mon=>2, :mday=>3}
|
4381
|
+
*
|
4382
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
4383
|
+
* You can stop this check by passing `limit: nil`, but note that
|
4384
|
+
* it may take a long time to parse.
|
4356
4385
|
*/
|
4357
4386
|
static VALUE
|
4358
4387
|
date_s__parse(int argc, VALUE *argv, VALUE klass)
|
@@ -4362,7 +4391,7 @@ date_s__parse(int argc, VALUE *argv, VALUE klass)
|
|
4362
4391
|
|
4363
4392
|
/*
|
4364
4393
|
* call-seq:
|
4365
|
-
* Date.parse(string='-4712-01-01'[, comp=true[, start=Date::ITALY]]) -> date
|
4394
|
+
* Date.parse(string='-4712-01-01'[, comp=true[, start=Date::ITALY]], limit: 128) -> date
|
4366
4395
|
*
|
4367
4396
|
* Parses the given representation of date and time, and creates a
|
4368
4397
|
* date object. This method does not function as a validator.
|
@@ -4374,13 +4403,18 @@ date_s__parse(int argc, VALUE *argv, VALUE klass)
|
|
4374
4403
|
* Date.parse('2001-02-03') #=> #<Date: 2001-02-03 ...>
|
4375
4404
|
* Date.parse('20010203') #=> #<Date: 2001-02-03 ...>
|
4376
4405
|
* Date.parse('3rd Feb 2001') #=> #<Date: 2001-02-03 ...>
|
4406
|
+
*
|
4407
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
4408
|
+
* You can stop this check by passing `limit: nil`, but note that
|
4409
|
+
* it may take a long time to parse.
|
4377
4410
|
*/
|
4378
4411
|
static VALUE
|
4379
4412
|
date_s_parse(int argc, VALUE *argv, VALUE klass)
|
4380
4413
|
{
|
4381
|
-
VALUE str, comp, sg;
|
4414
|
+
VALUE str, comp, sg, opt;
|
4382
4415
|
|
4383
|
-
rb_scan_args(argc, argv, "03", &str, &comp, &sg);
|
4416
|
+
rb_scan_args(argc, argv, "03:", &str, &comp, &sg, &opt);
|
4417
|
+
if (!NIL_P(opt)) argc--;
|
4384
4418
|
|
4385
4419
|
switch (argc) {
|
4386
4420
|
case 0:
|
@@ -4392,11 +4426,12 @@ date_s_parse(int argc, VALUE *argv, VALUE klass)
|
|
4392
4426
|
}
|
4393
4427
|
|
4394
4428
|
{
|
4395
|
-
|
4396
|
-
|
4397
|
-
|
4398
|
-
|
4399
|
-
|
4429
|
+
int argc2 = 2;
|
4430
|
+
VALUE argv2[3];
|
4431
|
+
argv2[0] = str;
|
4432
|
+
argv2[1] = comp;
|
4433
|
+
if (!NIL_P(opt)) argv2[argc2++] = opt;
|
4434
|
+
VALUE hash = date_s__parse(argc2, argv2, klass);
|
4400
4435
|
return d_new_by_frags(klass, hash, sg);
|
4401
4436
|
}
|
4402
4437
|
}
|
@@ -4410,19 +4445,28 @@ VALUE date__jisx0301(VALUE);
|
|
4410
4445
|
|
4411
4446
|
/*
|
4412
4447
|
* call-seq:
|
4413
|
-
* Date._iso8601(string) -> hash
|
4448
|
+
* Date._iso8601(string, limit: 128) -> hash
|
4414
4449
|
*
|
4415
4450
|
* Returns a hash of parsed elements.
|
4451
|
+
*
|
4452
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
4453
|
+
* You can stop this check by passing `limit: nil`, but note that
|
4454
|
+
* it may take a long time to parse.
|
4416
4455
|
*/
|
4417
4456
|
static VALUE
|
4418
|
-
date_s__iso8601(VALUE
|
4457
|
+
date_s__iso8601(int argc, VALUE *argv, VALUE klass)
|
4419
4458
|
{
|
4459
|
+
VALUE str, opt;
|
4460
|
+
|
4461
|
+
rb_scan_args(argc, argv, "1:", &str, &opt);
|
4462
|
+
check_limit(str, opt);
|
4463
|
+
|
4420
4464
|
return date__iso8601(str);
|
4421
4465
|
}
|
4422
4466
|
|
4423
4467
|
/*
|
4424
4468
|
* call-seq:
|
4425
|
-
* Date.iso8601(string='-4712-01-01'[, start=Date::ITALY]) -> date
|
4469
|
+
* Date.iso8601(string='-4712-01-01'[, start=Date::ITALY], limit: 128) -> date
|
4426
4470
|
*
|
4427
4471
|
* Creates a new Date object by parsing from a string according to
|
4428
4472
|
* some typical ISO 8601 formats.
|
@@ -4430,13 +4474,18 @@ date_s__iso8601(VALUE klass, VALUE str)
|
|
4430
4474
|
* Date.iso8601('2001-02-03') #=> #<Date: 2001-02-03 ...>
|
4431
4475
|
* Date.iso8601('20010203') #=> #<Date: 2001-02-03 ...>
|
4432
4476
|
* Date.iso8601('2001-W05-6') #=> #<Date: 2001-02-03 ...>
|
4477
|
+
*
|
4478
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
4479
|
+
* You can stop this check by passing `limit: nil`, but note that
|
4480
|
+
* it may take a long time to parse.
|
4433
4481
|
*/
|
4434
4482
|
static VALUE
|
4435
4483
|
date_s_iso8601(int argc, VALUE *argv, VALUE klass)
|
4436
4484
|
{
|
4437
|
-
VALUE str, sg;
|
4485
|
+
VALUE str, sg, opt;
|
4438
4486
|
|
4439
|
-
rb_scan_args(argc, argv, "02", &str, &sg);
|
4487
|
+
rb_scan_args(argc, argv, "02:", &str, &sg, &opt);
|
4488
|
+
if (!NIL_P(opt)) argc--;
|
4440
4489
|
|
4441
4490
|
switch (argc) {
|
4442
4491
|
case 0:
|
@@ -4446,38 +4495,56 @@ date_s_iso8601(int argc, VALUE *argv, VALUE klass)
|
|
4446
4495
|
}
|
4447
4496
|
|
4448
4497
|
{
|
4449
|
-
|
4498
|
+
int argc2 = 1;
|
4499
|
+
VALUE argv2[2];
|
4500
|
+
argv2[0] = str;
|
4501
|
+
if (!NIL_P(opt)) argv2[argc2++] = opt;
|
4502
|
+
VALUE hash = date_s__iso8601(argc2, argv2, klass);
|
4450
4503
|
return d_new_by_frags(klass, hash, sg);
|
4451
4504
|
}
|
4452
4505
|
}
|
4453
4506
|
|
4454
4507
|
/*
|
4455
4508
|
* call-seq:
|
4456
|
-
* Date._rfc3339(string) -> hash
|
4509
|
+
* Date._rfc3339(string, limit: 128) -> hash
|
4457
4510
|
*
|
4458
4511
|
* Returns a hash of parsed elements.
|
4512
|
+
*
|
4513
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
4514
|
+
* You can stop this check by passing `limit: nil`, but note that
|
4515
|
+
* it may take a long time to parse.
|
4459
4516
|
*/
|
4460
4517
|
static VALUE
|
4461
|
-
date_s__rfc3339(VALUE
|
4518
|
+
date_s__rfc3339(int argc, VALUE *argv, VALUE klass)
|
4462
4519
|
{
|
4520
|
+
VALUE str, opt;
|
4521
|
+
|
4522
|
+
rb_scan_args(argc, argv, "1:", &str, &opt);
|
4523
|
+
check_limit(str, opt);
|
4524
|
+
|
4463
4525
|
return date__rfc3339(str);
|
4464
4526
|
}
|
4465
4527
|
|
4466
4528
|
/*
|
4467
4529
|
* call-seq:
|
4468
|
-
* Date.rfc3339(string='-4712-01-01T00:00:00+00:00'[, start=Date::ITALY]) -> date
|
4530
|
+
* Date.rfc3339(string='-4712-01-01T00:00:00+00:00'[, start=Date::ITALY], limit: 128) -> date
|
4469
4531
|
*
|
4470
4532
|
* Creates a new Date object by parsing from a string according to
|
4471
4533
|
* some typical RFC 3339 formats.
|
4472
4534
|
*
|
4473
4535
|
* Date.rfc3339('2001-02-03T04:05:06+07:00') #=> #<Date: 2001-02-03 ...>
|
4536
|
+
*
|
4537
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
4538
|
+
* You can stop this check by passing `limit: nil`, but note that
|
4539
|
+
* it may take a long time to parse.
|
4474
4540
|
*/
|
4475
4541
|
static VALUE
|
4476
4542
|
date_s_rfc3339(int argc, VALUE *argv, VALUE klass)
|
4477
4543
|
{
|
4478
|
-
VALUE str, sg;
|
4544
|
+
VALUE str, sg, opt;
|
4479
4545
|
|
4480
|
-
rb_scan_args(argc, argv, "02", &str, &sg);
|
4546
|
+
rb_scan_args(argc, argv, "02:", &str, &sg, &opt);
|
4547
|
+
if (!NIL_P(opt)) argc--;
|
4481
4548
|
|
4482
4549
|
switch (argc) {
|
4483
4550
|
case 0:
|
@@ -4487,38 +4554,56 @@ date_s_rfc3339(int argc, VALUE *argv, VALUE klass)
|
|
4487
4554
|
}
|
4488
4555
|
|
4489
4556
|
{
|
4490
|
-
|
4557
|
+
int argc2 = 1;
|
4558
|
+
VALUE argv2[2];
|
4559
|
+
argv2[0] = str;
|
4560
|
+
if (!NIL_P(opt)) argv2[argc2++] = opt;
|
4561
|
+
VALUE hash = date_s__rfc3339(argc2, argv2, klass);
|
4491
4562
|
return d_new_by_frags(klass, hash, sg);
|
4492
4563
|
}
|
4493
4564
|
}
|
4494
4565
|
|
4495
4566
|
/*
|
4496
4567
|
* call-seq:
|
4497
|
-
* Date._xmlschema(string) -> hash
|
4568
|
+
* Date._xmlschema(string, limit: 128) -> hash
|
4498
4569
|
*
|
4499
4570
|
* Returns a hash of parsed elements.
|
4571
|
+
*
|
4572
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
4573
|
+
* You can stop this check by passing `limit: nil`, but note that
|
4574
|
+
* it may take a long time to parse.
|
4500
4575
|
*/
|
4501
4576
|
static VALUE
|
4502
|
-
date_s__xmlschema(VALUE
|
4577
|
+
date_s__xmlschema(int argc, VALUE *argv, VALUE klass)
|
4503
4578
|
{
|
4579
|
+
VALUE str, opt;
|
4580
|
+
|
4581
|
+
rb_scan_args(argc, argv, "1:", &str, &opt);
|
4582
|
+
check_limit(str, opt);
|
4583
|
+
|
4504
4584
|
return date__xmlschema(str);
|
4505
4585
|
}
|
4506
4586
|
|
4507
4587
|
/*
|
4508
4588
|
* call-seq:
|
4509
|
-
* Date.xmlschema(string='-4712-01-01'[, start=Date::ITALY]) -> date
|
4589
|
+
* Date.xmlschema(string='-4712-01-01'[, start=Date::ITALY], limit: 128) -> date
|
4510
4590
|
*
|
4511
4591
|
* Creates a new Date object by parsing from a string according to
|
4512
4592
|
* some typical XML Schema formats.
|
4513
4593
|
*
|
4514
4594
|
* Date.xmlschema('2001-02-03') #=> #<Date: 2001-02-03 ...>
|
4595
|
+
*
|
4596
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
4597
|
+
* You can stop this check by passing `limit: nil`, but note that
|
4598
|
+
* it may take a long time to parse.
|
4515
4599
|
*/
|
4516
4600
|
static VALUE
|
4517
4601
|
date_s_xmlschema(int argc, VALUE *argv, VALUE klass)
|
4518
4602
|
{
|
4519
|
-
VALUE str, sg;
|
4603
|
+
VALUE str, sg, opt;
|
4520
4604
|
|
4521
|
-
rb_scan_args(argc, argv, "02", &str, &sg);
|
4605
|
+
rb_scan_args(argc, argv, "02:", &str, &sg, &opt);
|
4606
|
+
if (!NIL_P(opt)) argc--;
|
4522
4607
|
|
4523
4608
|
switch (argc) {
|
4524
4609
|
case 0:
|
@@ -4528,41 +4613,58 @@ date_s_xmlschema(int argc, VALUE *argv, VALUE klass)
|
|
4528
4613
|
}
|
4529
4614
|
|
4530
4615
|
{
|
4531
|
-
|
4616
|
+
int argc2 = 1;
|
4617
|
+
VALUE argv2[2];
|
4618
|
+
argv2[0] = str;
|
4619
|
+
if (!NIL_P(opt)) argv2[argc2++] = opt;
|
4620
|
+
VALUE hash = date_s__xmlschema(argc2, argv2, klass);
|
4532
4621
|
return d_new_by_frags(klass, hash, sg);
|
4533
4622
|
}
|
4534
4623
|
}
|
4535
4624
|
|
4536
4625
|
/*
|
4537
4626
|
* call-seq:
|
4538
|
-
* Date._rfc2822(string) -> hash
|
4539
|
-
* Date._rfc822(string) -> hash
|
4627
|
+
* Date._rfc2822(string, limit: 128) -> hash
|
4628
|
+
* Date._rfc822(string, limit: 128) -> hash
|
4540
4629
|
*
|
4541
4630
|
* Returns a hash of parsed elements.
|
4631
|
+
*
|
4632
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
4633
|
+
* You can stop this check by passing `limit: nil`, but note that
|
4634
|
+
* it may take a long time to parse.
|
4542
4635
|
*/
|
4543
4636
|
static VALUE
|
4544
|
-
date_s__rfc2822(VALUE
|
4637
|
+
date_s__rfc2822(int argc, VALUE *argv, VALUE klass)
|
4545
4638
|
{
|
4639
|
+
VALUE str, opt;
|
4640
|
+
|
4641
|
+
rb_scan_args(argc, argv, "1:", &str, &opt);
|
4642
|
+
check_limit(str, opt);
|
4643
|
+
|
4546
4644
|
return date__rfc2822(str);
|
4547
4645
|
}
|
4548
4646
|
|
4549
4647
|
/*
|
4550
4648
|
* call-seq:
|
4551
|
-
* Date.rfc2822(string='Mon, 1 Jan -4712 00:00:00 +0000'[, start=Date::ITALY]) -> date
|
4552
|
-
* Date.rfc822(string='Mon, 1 Jan -4712 00:00:00 +0000'[, start=Date::ITALY]) -> date
|
4649
|
+
* Date.rfc2822(string='Mon, 1 Jan -4712 00:00:00 +0000'[, start=Date::ITALY], limit: 128) -> date
|
4650
|
+
* Date.rfc822(string='Mon, 1 Jan -4712 00:00:00 +0000'[, start=Date::ITALY], limit: 128) -> date
|
4553
4651
|
*
|
4554
4652
|
* Creates a new Date object by parsing from a string according to
|
4555
4653
|
* some typical RFC 2822 formats.
|
4556
4654
|
*
|
4557
4655
|
* Date.rfc2822('Sat, 3 Feb 2001 00:00:00 +0000')
|
4558
4656
|
* #=> #<Date: 2001-02-03 ...>
|
4657
|
+
*
|
4658
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
4659
|
+
* You can stop this check by passing `limit: nil`, but note that
|
4660
|
+
* it may take a long time to parse.
|
4559
4661
|
*/
|
4560
4662
|
static VALUE
|
4561
4663
|
date_s_rfc2822(int argc, VALUE *argv, VALUE klass)
|
4562
4664
|
{
|
4563
|
-
VALUE str, sg;
|
4665
|
+
VALUE str, sg, opt;
|
4564
4666
|
|
4565
|
-
rb_scan_args(argc, argv, "02", &str, &sg);
|
4667
|
+
rb_scan_args(argc, argv, "02:", &str, &sg, &opt);
|
4566
4668
|
|
4567
4669
|
switch (argc) {
|
4568
4670
|
case 0:
|
@@ -4572,39 +4674,56 @@ date_s_rfc2822(int argc, VALUE *argv, VALUE klass)
|
|
4572
4674
|
}
|
4573
4675
|
|
4574
4676
|
{
|
4575
|
-
|
4677
|
+
int argc2 = 1;
|
4678
|
+
VALUE argv2[2];
|
4679
|
+
argv2[0] = str;
|
4680
|
+
if (!NIL_P(opt)) argv2[argc2++] = opt;
|
4681
|
+
VALUE hash = date_s__rfc2822(argc2, argv2, klass);
|
4576
4682
|
return d_new_by_frags(klass, hash, sg);
|
4577
4683
|
}
|
4578
4684
|
}
|
4579
4685
|
|
4580
4686
|
/*
|
4581
4687
|
* call-seq:
|
4582
|
-
* Date._httpdate(string) -> hash
|
4688
|
+
* Date._httpdate(string, limit: 128) -> hash
|
4583
4689
|
*
|
4584
4690
|
* Returns a hash of parsed elements.
|
4691
|
+
*
|
4692
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
4693
|
+
* You can stop this check by passing `limit: nil`, but note that
|
4694
|
+
* it may take a long time to parse.
|
4585
4695
|
*/
|
4586
4696
|
static VALUE
|
4587
|
-
date_s__httpdate(VALUE
|
4697
|
+
date_s__httpdate(int argc, VALUE *argv, VALUE klass)
|
4588
4698
|
{
|
4699
|
+
VALUE str, opt;
|
4700
|
+
|
4701
|
+
rb_scan_args(argc, argv, "1:", &str, &opt);
|
4702
|
+
check_limit(str, opt);
|
4703
|
+
|
4589
4704
|
return date__httpdate(str);
|
4590
4705
|
}
|
4591
4706
|
|
4592
4707
|
/*
|
4593
4708
|
* call-seq:
|
4594
|
-
* Date.httpdate(string='Mon, 01 Jan -4712 00:00:00 GMT'[, start=Date::ITALY]) -> date
|
4709
|
+
* Date.httpdate(string='Mon, 01 Jan -4712 00:00:00 GMT'[, start=Date::ITALY], limit: 128) -> date
|
4595
4710
|
*
|
4596
4711
|
* Creates a new Date object by parsing from a string according to
|
4597
4712
|
* some RFC 2616 format.
|
4598
4713
|
*
|
4599
4714
|
* Date.httpdate('Sat, 03 Feb 2001 00:00:00 GMT')
|
4600
4715
|
* #=> #<Date: 2001-02-03 ...>
|
4716
|
+
*
|
4717
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
4718
|
+
* You can stop this check by passing `limit: nil`, but note that
|
4719
|
+
* it may take a long time to parse.
|
4601
4720
|
*/
|
4602
4721
|
static VALUE
|
4603
4722
|
date_s_httpdate(int argc, VALUE *argv, VALUE klass)
|
4604
4723
|
{
|
4605
|
-
VALUE str, sg;
|
4724
|
+
VALUE str, sg, opt;
|
4606
4725
|
|
4607
|
-
rb_scan_args(argc, argv, "02", &str, &sg);
|
4726
|
+
rb_scan_args(argc, argv, "02:", &str, &sg, &opt);
|
4608
4727
|
|
4609
4728
|
switch (argc) {
|
4610
4729
|
case 0:
|
@@ -4614,26 +4733,39 @@ date_s_httpdate(int argc, VALUE *argv, VALUE klass)
|
|
4614
4733
|
}
|
4615
4734
|
|
4616
4735
|
{
|
4617
|
-
|
4736
|
+
int argc2 = 1;
|
4737
|
+
VALUE argv2[2];
|
4738
|
+
argv2[0] = str;
|
4739
|
+
if (!NIL_P(opt)) argv2[argc2++] = opt;
|
4740
|
+
VALUE hash = date_s__httpdate(argc2, argv2, klass);
|
4618
4741
|
return d_new_by_frags(klass, hash, sg);
|
4619
4742
|
}
|
4620
4743
|
}
|
4621
4744
|
|
4622
4745
|
/*
|
4623
4746
|
* call-seq:
|
4624
|
-
* Date._jisx0301(string) -> hash
|
4747
|
+
* Date._jisx0301(string, limit: 128) -> hash
|
4625
4748
|
*
|
4626
4749
|
* Returns a hash of parsed elements.
|
4750
|
+
*
|
4751
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
4752
|
+
* You can stop this check by passing `limit: nil`, but note that
|
4753
|
+
* it may take a long time to parse.
|
4627
4754
|
*/
|
4628
4755
|
static VALUE
|
4629
|
-
date_s__jisx0301(VALUE
|
4756
|
+
date_s__jisx0301(int argc, VALUE *argv, VALUE klass)
|
4630
4757
|
{
|
4758
|
+
VALUE str, opt;
|
4759
|
+
|
4760
|
+
rb_scan_args(argc, argv, "1:", &str, &opt);
|
4761
|
+
check_limit(str, opt);
|
4762
|
+
|
4631
4763
|
return date__jisx0301(str);
|
4632
4764
|
}
|
4633
4765
|
|
4634
4766
|
/*
|
4635
4767
|
* call-seq:
|
4636
|
-
* Date.jisx0301(string='-4712-01-01'[, start=Date::ITALY]) -> date
|
4768
|
+
* Date.jisx0301(string='-4712-01-01'[, start=Date::ITALY], limit: 128) -> date
|
4637
4769
|
*
|
4638
4770
|
* Creates a new Date object by parsing from a string according to
|
4639
4771
|
* some typical JIS X 0301 formats.
|
@@ -4643,13 +4775,18 @@ date_s__jisx0301(VALUE klass, VALUE str)
|
|
4643
4775
|
* For no-era year, legacy format, Heisei is assumed.
|
4644
4776
|
*
|
4645
4777
|
* Date.jisx0301('13.02.03') #=> #<Date: 2001-02-03 ...>
|
4778
|
+
*
|
4779
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
4780
|
+
* You can stop this check by passing `limit: nil`, but note that
|
4781
|
+
* it may take a long time to parse.
|
4646
4782
|
*/
|
4647
4783
|
static VALUE
|
4648
4784
|
date_s_jisx0301(int argc, VALUE *argv, VALUE klass)
|
4649
4785
|
{
|
4650
|
-
VALUE str, sg;
|
4786
|
+
VALUE str, sg, opt;
|
4651
4787
|
|
4652
|
-
rb_scan_args(argc, argv, "02", &str, &sg);
|
4788
|
+
rb_scan_args(argc, argv, "02:", &str, &sg, &opt);
|
4789
|
+
if (!NIL_P(opt)) argc--;
|
4653
4790
|
|
4654
4791
|
switch (argc) {
|
4655
4792
|
case 0:
|
@@ -4659,7 +4796,11 @@ date_s_jisx0301(int argc, VALUE *argv, VALUE klass)
|
|
4659
4796
|
}
|
4660
4797
|
|
4661
4798
|
{
|
4662
|
-
|
4799
|
+
int argc2 = 1;
|
4800
|
+
VALUE argv2[2];
|
4801
|
+
argv2[0] = str;
|
4802
|
+
if (!NIL_P(opt)) argv2[argc2++] = opt;
|
4803
|
+
VALUE hash = date_s__jisx0301(argc2, argv2, klass);
|
4663
4804
|
return d_new_by_frags(klass, hash, sg);
|
4664
4805
|
}
|
4665
4806
|
}
|
@@ -7998,7 +8139,7 @@ datetime_s_strptime(int argc, VALUE *argv, VALUE klass)
|
|
7998
8139
|
|
7999
8140
|
/*
|
8000
8141
|
* call-seq:
|
8001
|
-
* DateTime.parse(string='-4712-01-01T00:00:00+00:00'[, comp=true[, start=Date::ITALY]]) -> datetime
|
8142
|
+
* DateTime.parse(string='-4712-01-01T00:00:00+00:00'[, comp=true[, start=Date::ITALY]], limit: 128) -> datetime
|
8002
8143
|
*
|
8003
8144
|
* Parses the given representation of date and time, and creates a
|
8004
8145
|
* DateTime object. This method does not function as a validator.
|
@@ -8012,13 +8153,18 @@ datetime_s_strptime(int argc, VALUE *argv, VALUE klass)
|
|
8012
8153
|
* #=> #<DateTime: 2001-02-03T04:05:06+07:00 ...>
|
8013
8154
|
* DateTime.parse('3rd Feb 2001 04:05:06 PM')
|
8014
8155
|
* #=> #<DateTime: 2001-02-03T16:05:06+00:00 ...>
|
8156
|
+
*
|
8157
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
8158
|
+
* You can stop this check by passing `limit: nil`, but note that
|
8159
|
+
* it may take a long time to parse.
|
8015
8160
|
*/
|
8016
8161
|
static VALUE
|
8017
8162
|
datetime_s_parse(int argc, VALUE *argv, VALUE klass)
|
8018
8163
|
{
|
8019
|
-
VALUE str, comp, sg;
|
8164
|
+
VALUE str, comp, sg, opt;
|
8020
8165
|
|
8021
|
-
rb_scan_args(argc, argv, "03", &str, &comp, &sg);
|
8166
|
+
rb_scan_args(argc, argv, "03:", &str, &comp, &sg, &opt);
|
8167
|
+
if (!NIL_P(opt)) argc--;
|
8022
8168
|
|
8023
8169
|
switch (argc) {
|
8024
8170
|
case 0:
|
@@ -8030,18 +8176,20 @@ datetime_s_parse(int argc, VALUE *argv, VALUE klass)
|
|
8030
8176
|
}
|
8031
8177
|
|
8032
8178
|
{
|
8033
|
-
|
8034
|
-
|
8035
|
-
|
8036
|
-
|
8037
|
-
|
8179
|
+
int argc2 = 2;
|
8180
|
+
VALUE argv2[3];
|
8181
|
+
argv2[0] = str;
|
8182
|
+
argv2[1] = comp;
|
8183
|
+
argv2[2] = opt;
|
8184
|
+
if (!NIL_P(opt)) argc2++;
|
8185
|
+
VALUE hash = date_s__parse(argc2, argv2, klass);
|
8038
8186
|
return dt_new_by_frags(klass, hash, sg);
|
8039
8187
|
}
|
8040
8188
|
}
|
8041
8189
|
|
8042
8190
|
/*
|
8043
8191
|
* call-seq:
|
8044
|
-
* DateTime.iso8601(string='-4712-01-01T00:00:00+00:00'[, start=Date::ITALY]) -> datetime
|
8192
|
+
* DateTime.iso8601(string='-4712-01-01T00:00:00+00:00'[, start=Date::ITALY], limit: 128) -> datetime
|
8045
8193
|
*
|
8046
8194
|
* Creates a new DateTime object by parsing from a string according to
|
8047
8195
|
* some typical ISO 8601 formats.
|
@@ -8052,13 +8200,18 @@ datetime_s_parse(int argc, VALUE *argv, VALUE klass)
|
|
8052
8200
|
* #=> #<DateTime: 2001-02-03T04:05:06+07:00 ...>
|
8053
8201
|
* DateTime.iso8601('2001-W05-6T04:05:06+07:00')
|
8054
8202
|
* #=> #<DateTime: 2001-02-03T04:05:06+07:00 ...>
|
8203
|
+
*
|
8204
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
8205
|
+
* You can stop this check by passing `limit: nil`, but note that
|
8206
|
+
* it may take a long time to parse.
|
8055
8207
|
*/
|
8056
8208
|
static VALUE
|
8057
8209
|
datetime_s_iso8601(int argc, VALUE *argv, VALUE klass)
|
8058
8210
|
{
|
8059
|
-
VALUE str, sg;
|
8211
|
+
VALUE str, sg, opt;
|
8060
8212
|
|
8061
|
-
rb_scan_args(argc, argv, "02", &str, &sg);
|
8213
|
+
rb_scan_args(argc, argv, "02:", &str, &sg, &opt);
|
8214
|
+
if (!NIL_P(opt)) argc--;
|
8062
8215
|
|
8063
8216
|
switch (argc) {
|
8064
8217
|
case 0:
|
@@ -8068,27 +8221,37 @@ datetime_s_iso8601(int argc, VALUE *argv, VALUE klass)
|
|
8068
8221
|
}
|
8069
8222
|
|
8070
8223
|
{
|
8071
|
-
|
8224
|
+
int argc2 = 1;
|
8225
|
+
VALUE argv2[2];
|
8226
|
+
argv2[0] = str;
|
8227
|
+
argv2[1] = opt;
|
8228
|
+
if (!NIL_P(opt)) argc2--;
|
8229
|
+
VALUE hash = date_s__iso8601(argc2, argv2, klass);
|
8072
8230
|
return dt_new_by_frags(klass, hash, sg);
|
8073
8231
|
}
|
8074
8232
|
}
|
8075
8233
|
|
8076
8234
|
/*
|
8077
8235
|
* call-seq:
|
8078
|
-
* DateTime.rfc3339(string='-4712-01-01T00:00:00+00:00'[, start=Date::ITALY]) -> datetime
|
8236
|
+
* DateTime.rfc3339(string='-4712-01-01T00:00:00+00:00'[, start=Date::ITALY], limit: 128) -> datetime
|
8079
8237
|
*
|
8080
8238
|
* Creates a new DateTime object by parsing from a string according to
|
8081
8239
|
* some typical RFC 3339 formats.
|
8082
8240
|
*
|
8083
8241
|
* DateTime.rfc3339('2001-02-03T04:05:06+07:00')
|
8084
8242
|
* #=> #<DateTime: 2001-02-03T04:05:06+07:00 ...>
|
8243
|
+
*
|
8244
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
8245
|
+
* You can stop this check by passing `limit: nil`, but note that
|
8246
|
+
* it may take a long time to parse.
|
8085
8247
|
*/
|
8086
8248
|
static VALUE
|
8087
8249
|
datetime_s_rfc3339(int argc, VALUE *argv, VALUE klass)
|
8088
8250
|
{
|
8089
|
-
VALUE str, sg;
|
8251
|
+
VALUE str, sg, opt;
|
8090
8252
|
|
8091
|
-
rb_scan_args(argc, argv, "02", &str, &sg);
|
8253
|
+
rb_scan_args(argc, argv, "02:", &str, &sg, &opt);
|
8254
|
+
if (!NIL_P(opt)) argc--;
|
8092
8255
|
|
8093
8256
|
switch (argc) {
|
8094
8257
|
case 0:
|
@@ -8098,27 +8261,37 @@ datetime_s_rfc3339(int argc, VALUE *argv, VALUE klass)
|
|
8098
8261
|
}
|
8099
8262
|
|
8100
8263
|
{
|
8101
|
-
|
8264
|
+
int argc2 = 1;
|
8265
|
+
VALUE argv2[2];
|
8266
|
+
argv2[0] = str;
|
8267
|
+
argv2[1] = opt;
|
8268
|
+
if (!NIL_P(opt)) argc2++;
|
8269
|
+
VALUE hash = date_s__rfc3339(argc2, argv2, klass);
|
8102
8270
|
return dt_new_by_frags(klass, hash, sg);
|
8103
8271
|
}
|
8104
8272
|
}
|
8105
8273
|
|
8106
8274
|
/*
|
8107
8275
|
* call-seq:
|
8108
|
-
* DateTime.xmlschema(string='-4712-01-01T00:00:00+00:00'[, start=Date::ITALY]) -> datetime
|
8276
|
+
* DateTime.xmlschema(string='-4712-01-01T00:00:00+00:00'[, start=Date::ITALY], limit: 128) -> datetime
|
8109
8277
|
*
|
8110
8278
|
* Creates a new DateTime object by parsing from a string according to
|
8111
8279
|
* some typical XML Schema formats.
|
8112
8280
|
*
|
8113
8281
|
* DateTime.xmlschema('2001-02-03T04:05:06+07:00')
|
8114
8282
|
* #=> #<DateTime: 2001-02-03T04:05:06+07:00 ...>
|
8283
|
+
*
|
8284
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
8285
|
+
* You can stop this check by passing `limit: nil`, but note that
|
8286
|
+
* it may take a long time to parse.
|
8115
8287
|
*/
|
8116
8288
|
static VALUE
|
8117
8289
|
datetime_s_xmlschema(int argc, VALUE *argv, VALUE klass)
|
8118
8290
|
{
|
8119
|
-
VALUE str, sg;
|
8291
|
+
VALUE str, sg, opt;
|
8120
8292
|
|
8121
|
-
rb_scan_args(argc, argv, "02", &str, &sg);
|
8293
|
+
rb_scan_args(argc, argv, "02:", &str, &sg, &opt);
|
8294
|
+
if (!NIL_P(opt)) argc--;
|
8122
8295
|
|
8123
8296
|
switch (argc) {
|
8124
8297
|
case 0:
|
@@ -8128,28 +8301,38 @@ datetime_s_xmlschema(int argc, VALUE *argv, VALUE klass)
|
|
8128
8301
|
}
|
8129
8302
|
|
8130
8303
|
{
|
8131
|
-
|
8304
|
+
int argc2 = 1;
|
8305
|
+
VALUE argv2[2];
|
8306
|
+
argv2[0] = str;
|
8307
|
+
argv2[1] = opt;
|
8308
|
+
if (!NIL_P(opt)) argc2++;
|
8309
|
+
VALUE hash = date_s__xmlschema(argc2, argv2, klass);
|
8132
8310
|
return dt_new_by_frags(klass, hash, sg);
|
8133
8311
|
}
|
8134
8312
|
}
|
8135
8313
|
|
8136
8314
|
/*
|
8137
8315
|
* call-seq:
|
8138
|
-
* DateTime.rfc2822(string='Mon, 1 Jan -4712 00:00:00 +0000'[, start=Date::ITALY]) -> datetime
|
8139
|
-
* DateTime.rfc822(string='Mon, 1 Jan -4712 00:00:00 +0000'[, start=Date::ITALY]) -> datetime
|
8316
|
+
* DateTime.rfc2822(string='Mon, 1 Jan -4712 00:00:00 +0000'[, start=Date::ITALY], limit: 128) -> datetime
|
8317
|
+
* DateTime.rfc822(string='Mon, 1 Jan -4712 00:00:00 +0000'[, start=Date::ITALY], limit: 128) -> datetime
|
8140
8318
|
*
|
8141
8319
|
* Creates a new DateTime object by parsing from a string according to
|
8142
8320
|
* some typical RFC 2822 formats.
|
8143
8321
|
*
|
8144
8322
|
* DateTime.rfc2822('Sat, 3 Feb 2001 04:05:06 +0700')
|
8145
8323
|
* #=> #<DateTime: 2001-02-03T04:05:06+07:00 ...>
|
8324
|
+
*
|
8325
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
8326
|
+
* You can stop this check by passing `limit: nil`, but note that
|
8327
|
+
* it may take a long time to parse.
|
8146
8328
|
*/
|
8147
8329
|
static VALUE
|
8148
8330
|
datetime_s_rfc2822(int argc, VALUE *argv, VALUE klass)
|
8149
8331
|
{
|
8150
|
-
VALUE str, sg;
|
8332
|
+
VALUE str, sg, opt;
|
8151
8333
|
|
8152
|
-
rb_scan_args(argc, argv, "02", &str, &sg);
|
8334
|
+
rb_scan_args(argc, argv, "02:", &str, &sg, &opt);
|
8335
|
+
if (!NIL_P(opt)) argc--;
|
8153
8336
|
|
8154
8337
|
switch (argc) {
|
8155
8338
|
case 0:
|
@@ -8159,7 +8342,12 @@ datetime_s_rfc2822(int argc, VALUE *argv, VALUE klass)
|
|
8159
8342
|
}
|
8160
8343
|
|
8161
8344
|
{
|
8162
|
-
|
8345
|
+
int argc2 = 1;
|
8346
|
+
VALUE argv2[2];
|
8347
|
+
argv2[0] = str;
|
8348
|
+
argv2[1] = opt;
|
8349
|
+
if (!NIL_P(opt)) argc2++;
|
8350
|
+
VALUE hash = date_s__rfc2822(argc2, argv2, klass);
|
8163
8351
|
return dt_new_by_frags(klass, hash, sg);
|
8164
8352
|
}
|
8165
8353
|
}
|
@@ -8173,13 +8361,18 @@ datetime_s_rfc2822(int argc, VALUE *argv, VALUE klass)
|
|
8173
8361
|
*
|
8174
8362
|
* DateTime.httpdate('Sat, 03 Feb 2001 04:05:06 GMT')
|
8175
8363
|
* #=> #<DateTime: 2001-02-03T04:05:06+00:00 ...>
|
8364
|
+
*
|
8365
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
8366
|
+
* You can stop this check by passing `limit: nil`, but note that
|
8367
|
+
* it may take a long time to parse.
|
8176
8368
|
*/
|
8177
8369
|
static VALUE
|
8178
8370
|
datetime_s_httpdate(int argc, VALUE *argv, VALUE klass)
|
8179
8371
|
{
|
8180
|
-
VALUE str, sg;
|
8372
|
+
VALUE str, sg, opt;
|
8181
8373
|
|
8182
|
-
rb_scan_args(argc, argv, "02", &str, &sg);
|
8374
|
+
rb_scan_args(argc, argv, "02:", &str, &sg, &opt);
|
8375
|
+
if (!NIL_P(opt)) argc--;
|
8183
8376
|
|
8184
8377
|
switch (argc) {
|
8185
8378
|
case 0:
|
@@ -8189,14 +8382,19 @@ datetime_s_httpdate(int argc, VALUE *argv, VALUE klass)
|
|
8189
8382
|
}
|
8190
8383
|
|
8191
8384
|
{
|
8192
|
-
|
8385
|
+
int argc2 = 1;
|
8386
|
+
VALUE argv2[2];
|
8387
|
+
argv2[0] = str;
|
8388
|
+
argv2[1] = opt;
|
8389
|
+
if (!NIL_P(opt)) argc2++;
|
8390
|
+
VALUE hash = date_s__httpdate(argc2, argv2, klass);
|
8193
8391
|
return dt_new_by_frags(klass, hash, sg);
|
8194
8392
|
}
|
8195
8393
|
}
|
8196
8394
|
|
8197
8395
|
/*
|
8198
8396
|
* call-seq:
|
8199
|
-
* DateTime.jisx0301(string='-4712-01-01T00:00:00+00:00'[, start=Date::ITALY]) -> datetime
|
8397
|
+
* DateTime.jisx0301(string='-4712-01-01T00:00:00+00:00'[, start=Date::ITALY], limit: 128) -> datetime
|
8200
8398
|
*
|
8201
8399
|
* Creates a new DateTime object by parsing from a string according to
|
8202
8400
|
* some typical JIS X 0301 formats.
|
@@ -8208,13 +8406,18 @@ datetime_s_httpdate(int argc, VALUE *argv, VALUE klass)
|
|
8208
8406
|
*
|
8209
8407
|
* DateTime.jisx0301('13.02.03T04:05:06+07:00')
|
8210
8408
|
* #=> #<DateTime: 2001-02-03T04:05:06+07:00 ...>
|
8409
|
+
*
|
8410
|
+
* Raise an ArgumentError when the string length is longer than _limit_.
|
8411
|
+
* You can stop this check by passing `limit: nil`, but note that
|
8412
|
+
* it may take a long time to parse.
|
8211
8413
|
*/
|
8212
8414
|
static VALUE
|
8213
8415
|
datetime_s_jisx0301(int argc, VALUE *argv, VALUE klass)
|
8214
8416
|
{
|
8215
|
-
VALUE str, sg;
|
8417
|
+
VALUE str, sg, opt;
|
8216
8418
|
|
8217
|
-
rb_scan_args(argc, argv, "02", &str, &sg);
|
8419
|
+
rb_scan_args(argc, argv, "02:", &str, &sg, &opt);
|
8420
|
+
if (!NIL_P(opt)) argc--;
|
8218
8421
|
|
8219
8422
|
switch (argc) {
|
8220
8423
|
case 0:
|
@@ -8224,7 +8427,12 @@ datetime_s_jisx0301(int argc, VALUE *argv, VALUE klass)
|
|
8224
8427
|
}
|
8225
8428
|
|
8226
8429
|
{
|
8227
|
-
|
8430
|
+
int argc2 = 1;
|
8431
|
+
VALUE argv2[2];
|
8432
|
+
argv2[0] = str;
|
8433
|
+
argv2[1] = opt;
|
8434
|
+
if (!NIL_P(opt)) argc2++;
|
8435
|
+
VALUE hash = date_s__jisx0301(argc2, argv2, klass);
|
8228
8436
|
return dt_new_by_frags(klass, hash, sg);
|
8229
8437
|
}
|
8230
8438
|
}
|
@@ -9383,19 +9591,19 @@ Init_date_core(void)
|
|
9383
9591
|
rb_define_singleton_method(cDate, "strptime", date_s_strptime, -1);
|
9384
9592
|
rb_define_singleton_method(cDate, "_parse", date_s__parse, -1);
|
9385
9593
|
rb_define_singleton_method(cDate, "parse", date_s_parse, -1);
|
9386
|
-
rb_define_singleton_method(cDate, "_iso8601", date_s__iso8601, 1);
|
9594
|
+
rb_define_singleton_method(cDate, "_iso8601", date_s__iso8601, -1);
|
9387
9595
|
rb_define_singleton_method(cDate, "iso8601", date_s_iso8601, -1);
|
9388
|
-
rb_define_singleton_method(cDate, "_rfc3339", date_s__rfc3339, 1);
|
9596
|
+
rb_define_singleton_method(cDate, "_rfc3339", date_s__rfc3339, -1);
|
9389
9597
|
rb_define_singleton_method(cDate, "rfc3339", date_s_rfc3339, -1);
|
9390
|
-
rb_define_singleton_method(cDate, "_xmlschema", date_s__xmlschema, 1);
|
9598
|
+
rb_define_singleton_method(cDate, "_xmlschema", date_s__xmlschema, -1);
|
9391
9599
|
rb_define_singleton_method(cDate, "xmlschema", date_s_xmlschema, -1);
|
9392
|
-
rb_define_singleton_method(cDate, "_rfc2822", date_s__rfc2822, 1);
|
9393
|
-
rb_define_singleton_method(cDate, "_rfc822", date_s__rfc2822, 1);
|
9600
|
+
rb_define_singleton_method(cDate, "_rfc2822", date_s__rfc2822, -1);
|
9601
|
+
rb_define_singleton_method(cDate, "_rfc822", date_s__rfc2822, -1);
|
9394
9602
|
rb_define_singleton_method(cDate, "rfc2822", date_s_rfc2822, -1);
|
9395
9603
|
rb_define_singleton_method(cDate, "rfc822", date_s_rfc2822, -1);
|
9396
|
-
rb_define_singleton_method(cDate, "_httpdate", date_s__httpdate, 1);
|
9604
|
+
rb_define_singleton_method(cDate, "_httpdate", date_s__httpdate, -1);
|
9397
9605
|
rb_define_singleton_method(cDate, "httpdate", date_s_httpdate, -1);
|
9398
|
-
rb_define_singleton_method(cDate, "_jisx0301", date_s__jisx0301, 1);
|
9606
|
+
rb_define_singleton_method(cDate, "_jisx0301", date_s__jisx0301, -1);
|
9399
9607
|
rb_define_singleton_method(cDate, "jisx0301", date_s_jisx0301, -1);
|
9400
9608
|
|
9401
9609
|
rb_define_method(cDate, "initialize", date_initialize, -1);
|
metadata
CHANGED
@@ -1,18 +1,18 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: date
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.
|
4
|
+
version: 3.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tadayoshi Funaba
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-11-15 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: A subclass of Object includes Comparable module for handling dates.
|
14
14
|
email:
|
15
|
-
-
|
15
|
+
-
|
16
16
|
executables: []
|
17
17
|
extensions:
|
18
18
|
- ext/date/extconf.rb
|
@@ -32,7 +32,7 @@ homepage: https://github.com/ruby/date
|
|
32
32
|
licenses:
|
33
33
|
- BSD-2-Clause
|
34
34
|
metadata: {}
|
35
|
-
post_install_message:
|
35
|
+
post_install_message:
|
36
36
|
rdoc_options: []
|
37
37
|
require_paths:
|
38
38
|
- lib
|
@@ -47,8 +47,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
47
47
|
- !ruby/object:Gem::Version
|
48
48
|
version: '0'
|
49
49
|
requirements: []
|
50
|
-
rubygems_version: 3.
|
51
|
-
signing_key:
|
50
|
+
rubygems_version: 3.1.4
|
51
|
+
signing_key:
|
52
52
|
specification_version: 4
|
53
53
|
summary: A subclass of Object includes Comparable module for handling dates.
|
54
54
|
test_files: []
|