Skip to content

Commit 30d1db4

Browse files
committed
10error.rb: move 2 more classes to error.c
- FloatDomainError - RegexpError
1 parent 0fb280a commit 30d1db4

2 files changed

Lines changed: 3 additions & 8 deletions

File tree

mrblib/10error.rb

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,3 @@
1-
class FloatDomainError < RangeError
2-
end
3-
4-
# ISO 15.2.26
5-
class RegexpError < StandardError
6-
end
7-
81
# ISO 15.2.31
92
class NameError < StandardError
103
attr_accessor :name

src/error.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -710,7 +710,9 @@ mrb_init_exception(mrb_state *mrb)
710710
mrb->eStandardError_class = mrb_define_class_id(mrb, MRB_SYM(StandardError), mrb->eException_class); /* 15.2.23 */
711711
mrb_define_class_id(mrb, MRB_SYM(ArgumentError), E_STANDARD_ERROR); /* 15.2.24 */
712712
mrb_define_class_id(mrb, MRB_SYM(LocalJumpError), E_STANDARD_ERROR); /* 15.2.25 */
713-
mrb_define_class_id(mrb, MRB_SYM(RangeError), E_STANDARD_ERROR); /* 15.2.26 */
713+
struct RClass *range_error = mrb_define_class_id(mrb, MRB_SYM(RangeError), E_STANDARD_ERROR); /* 15.2.26 */
714+
mrb_define_class_id(mrb, MRB_SYM(FloatDomainError), range_error);
715+
mrb_define_class_id(mrb, MRB_SYM(RegexpError), E_STANDARD_ERROR); /* 15.2.27 */
714716
struct RClass *runtime_error = mrb_define_class_id(mrb, MRB_SYM(RuntimeError), E_STANDARD_ERROR); /* 15.2.28 */
715717
mrb_define_class_id(mrb, MRB_SYM(FrozenError), runtime_error);
716718
mrb_define_class_id(mrb, MRB_SYM(TypeError), E_STANDARD_ERROR); /* 15.2.29 */

0 commit comments

Comments
 (0)