Nubie question

I am trying to learn Ruby and I have read the picax book at least twice and
seems to understand most of what is said in the book. Now I am reading
through some of the code written that I down loaded. I saw some code that I
wanted someone to explain to me.

module HL7 # :nodoc:
  VERSION = "0.1.%s" % "$Rev: 23 $".gsub(/\$Rev:\s+/, '').gsub(/\s*\$$/, '')
end

# Encapsulate HL7 specific exceptions
class HL7::Exception < StandardError
end

# Parsing failed
class HL7::ParseError < HL7::Exception
end

Explain to me how to use the "::" operator. It seems the author is defining
a Class called HL7::Exception? The syntax for class definition is Class
Name.

Thanksl

Check out the Pickaxe chapter on modules.

HTH,

Felix

···

-----Original Message-----
From: Mac Pat [mailto:pat.mac5453@gmail.com]
Sent: Sunday, July 29, 2007 3:05 PM
To: ruby-talk ML
Subject: nubie question

I am trying to learn Ruby and I have read the picax book at
least twice and seems to understand most of what is said in
the book. Now I am reading through some of the code written
that I down loaded. I saw some code that I wanted someone to
explain to me.

module HL7 # :nodoc:
  VERSION = "0.1.%s" % "$Rev: 23 $".gsub(/\$Rev:\s+/,
'').gsub(/\s*\$$/, '') end

# Encapsulate HL7 specific exceptions
class HL7::Exception < StandardError
end

# Parsing failed
class HL7::ParseError < HL7::Exception
end

Explain to me how to use the "::" operator. It seems the
author is defining a Class called HL7::Exception? The syntax
for class definition is Class Name.

Thanksl

Hi,

module HL7 # :nodoc:
  VERSION = "0.1.%s" % "$Rev: 23 $".gsub(/\$Rev:\s+/, '').gsub(/\s*\$$/, '')
end

I think smarter would be one of

  V = "0.1." + "$Rev: 23 $"[/\$Rev:\s*(\d+)\s*\$/, 1]
  V = "0.1.%d" % "$Rev: 23 $"[/\d+/]
  V = [0,1,"$Rev: 23 $"[/\d+/]].join "."

To get it readable to some slight extent one should split it
up into at least two lines.

  tiny = "$Rev: 23 $"[/\d+/]
  ...

# Encapsulate HL7 specific exceptions
class HL7::Exception < StandardError
end

  module HL7 ; class Exception < ::StandardError ; end ; end

Bertram

···

Am Montag, 30. Jul 2007, 07:04:57 +0900 schrieb Mac Pat:

--
Bertram Scharpf
Stuttgart, Deutschland/Germany
http://www.bertram-scharpf.de