diff options
| -rw-r--r-- | mrblib/print.rb | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/mrblib/print.rb b/mrblib/print.rb index 7ec6d70ef..3ebd77ee6 100644 --- a/mrblib/print.rb +++ b/mrblib/print.rb @@ -48,12 +48,24 @@ module Kernel args[0] end - if Kernel.respond_to?(:sprintf) - ## - # Invoke method +sprintf+ and pass +*args+ to it. - # Pass return value to *print* of STDOUT. - def printf(*args) + ## + # Invoke method +sprintf+ and pass +*args+ to it. + # Pass return value to +print+ of STDOUT. + def printf(*args) + if Kernel.respond_to?(:sprintf) __printstr__(sprintf(*args)) + else + raise NotImplementedError.new('sprintf not available') + end + end + + ## + # +sprintf+ is defined in +src/sprintf.c+ + # This stub method is only to inform the user + # that +sprintf+ isn't implemented. + unless Kernel.respond_to?(:sprintf) + def sprintf(*args) + raise NotImplementedError.new('sprintf not available') end end end |
