tbmx 0.5.0 → 0.5.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/tbmx.rb +48 -18
  2. metadata +1 -1
data/lib/tbmx.rb CHANGED
@@ -290,14 +290,52 @@ module TBMX
290
290
  when "bookmarks-folder-id", "bookmarks_folder_id", "bookmarks_folder-id", "bookmarks-folder_id",
291
291
  "bookmark-folder-id", "bookmark_folder_id", "bookmark_folder-id", "bookmark-folder_id"
292
292
  bookmarks_folder_id_command_handler
293
+ when "pi"
294
+ "#{Math::PI}"
295
+ when "e"
296
+ "#{Math::E}"
293
297
  when "+"
294
- addition
298
+ reducable_math_function_handler :+
295
299
  when "-"
296
- subtraction
300
+ reducable_math_function_handler :-
297
301
  when "*"
298
- multiplication
302
+ reducable_math_function_handler :*
299
303
  when "/"
300
- division
304
+ reducable_math_function_handler :/
305
+ when "sin"
306
+ math_function_handler :sin
307
+ when "cos"
308
+ math_function_handler :cos
309
+ when "tan"
310
+ math_function_handler :tan
311
+ when "asin"
312
+ math_function_handler :asin
313
+ when "acos"
314
+ math_function_handler :acos
315
+ when "atan"
316
+ math_function_handler :atan
317
+ when "sinh"
318
+ math_function_handler :sinh
319
+ when "cosh"
320
+ math_function_handler :cosh
321
+ when "tanh"
322
+ math_function_handler :tanh
323
+ when "asinh"
324
+ math_function_handler :asinh
325
+ when "acosh"
326
+ math_function_handler :acosh
327
+ when "atanh"
328
+ math_function_handler :atanh
329
+ when "erfc"
330
+ math_function_handler :erfc
331
+ when "gamma"
332
+ math_function_handler :gamma
333
+ when "lgamma"
334
+ math_function_handler :lgamma
335
+ when "log10"
336
+ math_function_handler :log10
337
+ when "log2"
338
+ math_function_handler :log2
301
339
  else
302
340
  command_error "unknown command #{command.to_html}"
303
341
  end
@@ -311,7 +349,7 @@ module TBMX
311
349
  %{<a href="#{TB_COM}/#{target}">#{string}</a>}
312
350
  end
313
351
 
314
- def reducable_math_function_handler(function)
352
+ def numbers_from_expressions
315
353
  expressions
316
354
  .map do |number|
317
355
  begin
@@ -319,23 +357,15 @@ module TBMX
319
357
  rescue ArgumentError
320
358
  nil
321
359
  end
322
- end.reject(&:nil?).reduce(function)
323
- end
324
-
325
- def addition
326
- reducable_math_function_handler :+
360
+ end.reject &:nil?
327
361
  end
328
362
 
329
- def subtraction
330
- reducable_math_function_handler :-
331
- end
332
-
333
- def multiplication
334
- reducable_math_function_handler :*
363
+ def reducable_math_function_handler(function)
364
+ numbers_from_expressions.reduce function
335
365
  end
336
366
 
337
- def division
338
- reducable_math_function_handler :/
367
+ def math_function_handler(function)
368
+ Math.send function, numbers_from_expressions.first
339
369
  end
340
370
 
341
371
  def user_command_handler
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tbmx
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors: