Hello,
The given two classes (TestClass1 and TestClass2) are in a single ruby
code. I want a code that separate both classes and save them into 2
diffrent ruby files.
E.g
Orginal code "test.rb" (contains the classes)
after executing
one file for 1 class "class1.rb"
second file for second class "class2.rb"
and so on...
I would be very thankful to you dear
···
-------------------------
class TestClass1
def method1(a,b)
sum = a + b
puts sum
end
def method2(*c)
l = c.length
puts l
end
end
--------------
class TestClass2
def method1(a,b)
sum = a + b
puts sum
end
def method2(*c)
l = c.length
puts l
end
end
--
Posted via http://www.ruby-forum.com/.
For what exactly? I mean, opening two files in an editor and copy +
pasting the code there can't be that hard, can it?
Cheers
robert
···
2008/6/10 Michel Son <zul_haq@hotmail.com>:
The given two classes (TestClass1 and TestClass2) are in a single ruby
code. I want a code that separate both classes and save them into 2
diffrent ruby files.
E.g
Orginal code "test.rb" (contains the classes)
after executing
one file for 1 class "class1.rb"
second file for second class "class2.rb"
and so on...
I would be very thankful to you dear
--
use.inject do |as, often| as.you_can - without end
-------- Original-Nachricht --------
Datum: Wed, 11 Jun 2008 01:11:42 +0900
Von: Michel Son <zul_haq@hotmail.com>
An: ruby-talk@ruby-lang.org
Betreff: Re: Making separate File
Robert Klemme wrote:
>> second file for second class "class2.rb"
>> and so on...
>>
>> I would be very thankful to you dear
>
> For what exactly? I mean, opening two files in an editor and copy +
> pasting the code there can't be that hard, can it?
>
> Cheers
>
> robert
Without opening them. It should seprate the code based on "class"
keyword and storing it in other file using ruby code.
--
Posted via http://www.ruby-forum.com/\.
Michel,
supposing that the original code is in "sourcefile", and that there is no text in between
the classes, you can use something like this:
text=IO.readlines(sourcefile)
classes=text.split(/(?=class )/).delete_if{|text| /^class/.match(text)==nil}
classes.each_with_index{|c_text,i|
f=File.new("class_file_" + i.to_s + '.rb',"w")
f.puts c_text
f.close
}
Best regards,
Axel
···
> 2008/6/10 Michel Son <zul_haq@hotmail.com>:
--
GMX startet ShortView.de. Hier findest Du Leute mit Deinen Interessen!
Jetzt dabei sein: http://www.shortview.de/?mc=sv_ext_mf@gmx
This error is arises when i run the code:
"private method `split' called for #<Array:0x28402b8> (NoMethodError)"
Actually i am new to ruby thats why i have
···
--
Posted via http://www.ruby-forum.com/.
-------- Original-Nachricht --------
Datum: Wed, 11 Jun 2008 02:24:45 +0900
Von: Michel Son <zul_haq@hotmail.com>
An: ruby-talk@ruby-lang.org
Betreff: Re: Making separate File
This error is arises when i run the code:
"private method `split' called for #<Array:0x28402b8> (NoMethodError)"
Actually i am new to ruby thats why i have
--
Posted via http://www.ruby-forum.com/\.
Michel,
sorry, that was my fault.
You must change the line with IO.readlines to
text=IO.readlines(sourcefile).to_s
Otherwise, text is an Array, but with to_s, it is converted to a String.
And that's what the Regular Expression needs.
Best regards,
Axel
···
--
Psssst! Schon vom neuen GMX MultiMessenger gehört?
Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger
Or just do
test = IO.read(sourcefile)
Cheers
robert
···
On 10.06.2008 19:37, Axel Etzold wrote:
-------- Original-Nachricht --------
Datum: Wed, 11 Jun 2008 02:24:45 +0900
Von: Michel Son <zul_haq@hotmail.com>
An: ruby-talk@ruby-lang.org
Betreff: Re: Making separate File
This error is arises when i run the code:
"private method `split' called for #<Array:0x28402b8> (NoMethodError)"
Actually i am new to ruby thats why i have
sorry, that was my fault.
You must change the line with IO.readlines to
text=IO.readlines(sourcefile).to_s