Advertisement
Guest User

Untitled

a guest
Jun 20th, 2019
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.62 KB | None | 0 0
  1. def func(x)
  2. x += 1
  3. end
  4.  
  5. a = 5
  6. func(a) #this should be something like func(ref a)
  7. puts a #should read '6'
  8.  
  9. a = func(a)
  10.  
  11. def func(x, bdg)
  12. eval "#{x} += 1", bdg
  13. end
  14.  
  15. a = 5
  16. func(:a, binding)
  17. puts a # => 6
  18.  
  19. class Container
  20. attr_accessor :value
  21. def initialize value
  22. @value = value
  23. end
  24. end
  25.  
  26. def func(x)
  27. x.value += 1
  28. end
  29.  
  30. a = Container.new(5)
  31. func(a)
  32. puts a.value
  33.  
  34. def func(x)
  35. x[0] += 1
  36. end
  37.  
  38. a = [5]
  39. func(a) #this should be something like func(ref a)
  40. puts a[0] #should read '6'
  41.  
  42. fp = {}
  43. def changeit(par)
  44. par[:abc] = 'cde'
  45. end
  46.  
  47. changeit(fp)
  48.  
  49. p fp
  50.  
  51. {:abc=>"cde"}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement