[#397988] Help with sqlite3 please — Kaye Ng <lists@...>

I'm on Windows 7 Ultimate, 64-bit

18 messages 2012/08/03
[#397989] Re: Help with sqlite3 please — Chris Hulan <chris.hulan@...> 2012/08/03

sqlite is not ruby, so you should look for a sqlite group ;)

[#397990] Re: Help with sqlite3 please — Kaye Ng <lists@...> 2012/08/03

> However it looks like you have 'SQL' at the beginning of your CREATE

[#398031] Gem install or usage problem in shared environment — Tom Moulton <lists@...>

I am moving to a Westhost shared CPanel account and I am trying to set

17 messages 2012/08/04
[#398077] Re: Gem install or usage problem in shared environment — Tom Moulton <lists@...> 2012/08/06

I got a solution from WestHost and it may help others:

[#398086] Re: Gem install or usage problem in shared environment — Ryan Davis <ryand-ruby@...> 2012/08/07

[#398088] Re: Gem install or usage problem in shared environment — Tom Moulton <lists@...> 2012/08/07

Ryan Davis wrote in post #1071503:

[#398063] Join with ActiveRecord using non-standard schema — Tedi Roca <lists@...>

Hi,

13 messages 2012/08/06

[#398135] Help with database-related code pls — Kaye Ng <lists@...>

Hi guys! This is just a part of the code of a program that can load a

12 messages 2012/08/08

[#398190] How do you order your class methods? — masta Blasta <lists@...>

Just getting some layout ideas from other fellow devs.

11 messages 2012/08/10

[#398245] namespace instance methods? — John Doe <lists@...>

I have a large class with many instance methods that I want to

14 messages 2012/08/13

[#398287] Idea: def ... end returns the symbolized version of the newly-defined method, instead of nil — Peter <lumbergh@...>

This would allow useful syntax constructs such as this:

9 messages 2012/08/13

[#398362] case vs if-else — ajay paswan <lists@...>

Which one is faster?

20 messages 2012/08/16

[#398385] A Ruby class is never closed — Rubyist Rohit <lists@...>

Is it true that a Ruby class definition is never closed? Even after

18 messages 2012/08/16

[#398504] How to create an EXecutable file (Linux) — Fosiul Alam <lists@...>

Hi

13 messages 2012/08/22

[#398506] Save a file by clicking on a link — ajay paswan <lists@...>

I clicked a link to download a file using ruby, now I see the open-save

41 messages 2012/08/22

[#398641] force child threads run paralelly? — ajay paswan <lists@...>

I have created two child thread using main thread- child1 and child2.

19 messages 2012/08/28
[#398644] Re: force child threads run paralelly? — ajay paswan <lists@...> 2012/08/28

Ruby version:

[#398648] Re: force child threads run paralelly? — Tony Arcieri <tony.arcieri@...> 2012/08/28

On Tue, Aug 28, 2012 at 7:19 AM, ajay paswan <lists@ruby-forum.com> wrote:

[#398684] Can I do this with Ruby and sqlite alone? — Kaye Ng <lists@...>

Hi guys.

16 messages 2012/08/29

Re: Redefining constants for a given instance only

From: Robert Klemme <shortcutter@...>
Date: 2012-08-05 21:18:44 UTC
List: ruby-talk #398052
On Sun, Aug 5, 2012 at 7:48 PM, Andrea Dallera <andrea@andreadallera.com> wrote:
> Unfortunately, I'd like to avoid storing the class in a variable and then
> referring to it because then the code inside what I called Evaluator would
> have to be aware of the mechanics.

> The method Evaluator#evaluate might also
> refer to more than one constant

From the rest of your posting it's clear that you mean "classes" and
not "constants".

> and, ideally, shouldn't be at all aware that
> one of the constant it's using is not what it originally was defined:

I think you should step back a bit and rethink.  Then, what is the
logic you actually want to implement?

> mind that the swap should happen only for a given instance of Evaluator, not
> at the class level, in a way such as

Why then are you insisting on constants?  Constants are definitively
the wrong mechanism in this case.

> ev1 = Evaluator.new
> ev2 = Evaluator.new
> ev1.set(A).to(B) #something like this, or worse named ev1.set(A,B) for
> simplicity
> ev1.evaluate #here, A.is_a?(B)#true.
> ev2.evaluate #here, not so
>
> I'm not even sure if that's possible to do in ruby at this point. Opening
> the singleton class (class << ev1) and defining the constant there works (in
> the sense that the singleton class has the constant correctly  changed) but
> the methods defined on the class correctly ignore it.

If you want something constantish then I suggest you use a Hash with
Symbols as keys in Evaluator like

class Evaluator
  def initialize
    @classes = {
      :a => A,
      :b => B,
    }
  end

  def evaluate
    a_instance = @classes[:a].new
    ...
  end

  def set_class(label, class_object)
    raise "Wrong arguments" unless label.class == Symbol &&
class_object.class == Class
    @classes[label] = class_object
  end
end

Cheers

robert

-- 
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/

In This Thread