Rspec Screenshot

Rspec Screenshot
Copyright © 2014, 2015 LHA. All rights reserved.

Wednesday, May 20, 2015

Injectors-to-the-Top

In this months release we continue to bring Jackbox more in line the Ruby base.  We have addressed a couple of issues that existed with use of Injectors at the Ruby top-level.  The Injector metaphor now works consistently all the way through. The basic idea to remember at the top is that #inject does its work on the Object class while #enrich does so in the 'main' instance.


    injector :Major do
      def meth
        1
      end
    end

    inject Major()

    meth.should == 1

    eject :Major

    expect{meth}.to raise_error(NoMethodError) 

      

    # Because 'main' is an Object instance, granted
    # a (special Object instance), the previous call 
    # to #eject operates like in any other instance
    # and ejects #Major only for the 'main' instance


    Object.new.meth.should == 1                                      

    # To actually eject from Object

    Object.eject :Major

    expect{Object.new.meth}.to raise_error(NoMethodError) 

      
We have also fixed some issues that existed with ancestor chains, have introduced new methods to #inspect, #to_s, and #show Injectors, and once again cleaned up the examples, code, and the readme file.  This last one continues to grow, and hopefully is a good read.

We have also decided to put-off, the Jackbox Challenge until we have a 1.0 release candidate which should be coming.  Unfortunately, we have to do development in between other the things we are involved.  But, it I promise it won't be long.

Once again Many Thanks to all the wonderful people who have shown their interest and support.  Don't forget to visit our webpage: http://jackbox.us.

To install just type: gem install jackbox

lha