Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.ruby > #7286

Re: how to get access to the comparison passed

Newsgroups comp.lang.ruby
Date 2016-08-30 05:48 -0700
References <fb2a2517-8e96-4f9d-bc28-e42722176626@googlegroups.com> <e2jhhgF5cn2U1@mid.individual.net>
Message-ID <b5136a98-120c-470b-853e-e2a909425044@googlegroups.com> (permalink)
Subject Re: how to get access to the comparison passed
From Mario Ruiz <tcblues@gmail.com>

Show all headers | View raw


Thanks!
I got this one earlier... but I was trying to not be using eval and string

On Monday, August 29, 2016 at 7:42:48 PM UTC, Robert Klemme wrote:
> On 29.08.2016 16:49, Mario Ruiz wrote:
> > If I have a method like this:
> >
> > def my_method(comp)
> >  #I know this is not working but to understand what I want
> >  puts comp.to_s
> >  return comp
> > end
> >
> >
> > my_method(4==6)
> > # my_method will return false and print out 4==6
> >
> > b=7
> > c=9
> > life=false
> > my_method(b<456)
> > #my_method will return true and print out b<456
> >
> > my_method(c>=b)
> > #my_method will return true and print out c>=b
> >
> > my_method(life)
> > #my_method will return false and print out life
> >
> > is that possible?
> 
> Sort of, but eval is a security risk:
> 
> def my_method(comp, binding)
>    puts comp
>    eval(comp, binding)
> end
> 
> x = 10
> y = 20
> my_method "x > y", binding
> 
> There is a gem which presumably lets you get rid of the second argument:
> https://rubygems.org/gems/binding_of_caller/
> 
> Kind regards
> 
> 	robert
> 
> -- 
> remember.guy do |as, often| as.you_can - without end
> http://blog.rubybestpractices.com/

Back to comp.lang.ruby | Previous | NextPrevious in thread | Find similar


Thread

how to get access to the comparison passed Mario Ruiz <tcblues@gmail.com> - 2016-08-29 07:49 -0700
  Re: how to get access to the comparison passed Robert Klemme <shortcutter@googlemail.com> - 2016-08-29 21:42 +0200
    Re: how to get access to the comparison passed Mario Ruiz <tcblues@gmail.com> - 2016-08-30 05:48 -0700

csiph-web