[#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:

[#398043] Redefining constants for a given instance only — "Andrea Dallera" <andrea@...>

Hello,=0A=0A=C2=A0 =C2=A0 let's say we have two empty classes:=0A=0Aclass=

9 messages 2012/08/05

[#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: OptionParser error handling (InvalidArgument)

From: Panagiotis Atmatzidis <ml@...>
Date: 2012-08-03 23:31:50 UTC
List: ruby-talk #398011
Hello,

Thanks for the reply.

On 3 =CE=91=CF=85=CE=B3 2012, at 21:21 , sto.mar@web.de wrote:

> It is not clear to me what your problem is.

I dislike the way the error is displayed. I'd like to print a message =
like the one after the 'rescue' keyword. Maybe it's not a good practice =
though and I should leave it as is.

> Slightly adapted from the post cited by you:
>=20
> -----
> require 'optparse'
>=20
> options =3D {}
>=20
> opts =3D OptionParser.new do |opts|
>  # Cast 'no' argument to an Integer.
>  opts.on('-n', '--no N', Integer, 'Number of...') do |no|
>    options[:no] =3D no
>  end
> end
>=20
> opts.parse!(ARGV)
>=20
> p options
> -----
>=20
> results (as it should) in
>=20
> $ ruby optparse.rb -n 34
> {:no=3D>34}
>=20
> $ ruby optparse.rb -n duck
> optparse.rb:12:in `<main>': invalid argument: -n duck =
(OptionParser::InvalidArgument)
>=20
>=20
> Am 03.08.2012 18:03, schrieb Panagiotis Atmatzidis:
>> ----------------------------------------------------
>> # check if options[:no] is interger
>>=20
>> if options[:no]
>>         begin
>>                 $no =3D Integer(options[:no])
>>         rescue ArgumentError
>>                 puts "#{$no} is not an Integer!"
>>         else
>>                 true
>>         end
>> else
>>         $no =3D 0
>> end
>=20
> This is not necessary, since the option value has already been
> cast to an integer, or an exception has been raised.
>=20
> Btw, you should not use global variables.

Why not?

>=20
>> ----------------------------------------------------
>> but didn't work. The error I get from cli is:
>>=20
>> f2bread.rb:483:in `<main>': invalid argument: -s duck =
(OptionParser::InvalidArgument)
>>=20
>> Apparently I need to somehow handle this from within OptionParser. =
Any ideas on how to proceed?  I found this post[1] online which explains =
what I want but I couldn't figure how exactly it works. So some actual =
codes with a sort of explanation of where *exactly* sits on the program =
(outside or inside "OptionParser.new" class?).
>>=20
>> The relevant OptionParser lines, where is specified that '-n' accepts =
Integers, are:
>> ----------------------------------------------------
>>  opts.on('-n', '--no N', Integer, 'Number of top entries to be =
displayed. By default all entries are displayed.') do |no|
>>                 options[:no] =3D no
>>         end
>> ----------------------------------------------------
>=20
> actually, it *did* work. "duck" is not an integer,
> so an exception is raised.

I just want to print a predefined error message. It seems more easy to =
read to me, although as I said above, it might not be a good practice =
and I'm not sure anymore if I should add it or no :-P given the fact =
that you're the second person pointing out that "it's working as it =
should".

>=20
>> [1] http://blog.segment7.net/2008/01/05/optionparser-argument-casting
>=20
>=20
> --=20
> <https://github.com/stomar/>
>=20



A bit off-topic now. In your next email you told me that you dislike =
raising an exception in order to identify an integer. A second approach =
I found online was using regexp. However this was the answer I got from =
a user at 'stackoverflow' which convinced that this is the right way to =
go in ruby:

"Sarah: you can use a Regex but in order to handle all the cases that =
Ruby does when parsing integers (negative numbers, hex, octal, =
underscores e.g. 1_000_000) it would be a very big Regex and easy to get =
wrong. Integer() is canonical because with Integer ()you know for sure =
that anything that Ruby considers an integer literal will be accepted, =
and everything else will be rejected. Duplicating what the language =
already gives you is arguably a worse code smell than using exceptions =
for control. =E2=80=93 Avdi " from =
http://stackoverflow.com/questions/1235863/test-if-a-string-is-basically-a=
n-integer-in-quotes-using-ruby

Best Regards

Panagiotis Atmatzidis
-----------------------------
Pharmacy Student at VFU

email4lists: 	ml@convalesco.org
More info: 	http://about.me/atmosx

The wise man said: "Never argue with an idiot, he brings you down to his =
level and beat you with experience."





In This Thread