when i try to start webrick i get this message
./easyhtmlserver:12: syntax error, unexpected tASSOC, expecting kEND
:Port => 80
^
./easyhtmlserver:14: syntax error, unexpected tASSOC, expecting kEND
:Port => 801
^
./easyhtmlserver:11: warning: found = in conditional, should be ==
./easyhtmlserver:16: syntax error, unexpected tSYMBEG, expecting ')'
:DocumentRoot => "/home/" + $home + "/easyhtml/" + $pro
^
./easyhtmlserver:17: syntax error, unexpected ')', expecting kEND
./easyhtmlserver:28: syntax error, unexpected $end, expecting kEND
this is my code
#!/usr/bin/env ruby
#require the libaries
require 'webrick'
include WEBrick
#make the class
class EasyHTMLServer
def initalize
s = HTTPServer.new(
if $port = 80
:Port => 80
else
:Port => 801
end
:DocumentRoot => "/home/" + $home + "/easyhtml/" + $pro
)
end
end
#declare the varibles
$home = ARGV[0]
$pro = ARGV[1]
$port = ARGV[2]
#load the server
EasyHTMLServer.new
···
--
Posted via http://www.ruby-forum.com/ .
when i try to start webrick i get this message
./easyhtmlserver:12: syntax error, unexpected tASSOC, expecting kEND
:Port => 80
^
./easyhtmlserver:14: syntax error, unexpected tASSOC, expecting kEND
:Port => 801
^
./easyhtmlserver:11: warning: found = in conditional, should be ==
./easyhtmlserver:16: syntax error, unexpected tSYMBEG, expecting ')'
:DocumentRoot => "/home/" + $home + "/easyhtml/" + $pro
^
./easyhtmlserver:17: syntax error, unexpected ')', expecting kEND
./easyhtmlserver:28: syntax error, unexpected $end, expecting kEND
This should work:
#make the class
class EasyHTMLServer
def initalize
s = HTTPServer.new(
(if $port = 80
:Port => 80
else
:Port => 801
end),
:DocumentRoot => "/home/" + $home + "/easyhtml/" + $pro
)
end
end
But that code is pretty nasty to look at.
Regards,
Ben
···
On Wed, Jul 8, 2009 at 9:41 PM, Alex Gore <gjgfuj@y7mail.com> wrote:
spox
(spox)
8 July 2009 22:11
3
s = HTTPServer.new(:Port => $port == 80 ? 80 : 801, :DocumentRoot => 'etc...')
···
On Wednesday 08 July 2009 14:41:38 Alex Gore wrote:
when i try to start webrick i get this message
./easyhtmlserver:12: syntax error, unexpected tASSOC, expecting kEND
:Port => 80
^
./easyhtmlserver:14: syntax error, unexpected tASSOC, expecting kEND
:Port => 801
^
./easyhtmlserver:11: warning: found = in conditional, should be ==
./easyhtmlserver:16: syntax error, unexpected tSYMBEG, expecting ')'
:DocumentRoot => "/home/" + $home + "/easyhtml/" + $pro
^
./easyhtmlserver:17: syntax error, unexpected ')', expecting kEND
./easyhtmlserver:28: syntax error, unexpected $end, expecting kEND
this is my code
#!/usr/bin/env ruby
#require the libaries
require 'webrick'
include WEBrick
#make the class
class EasyHTMLServer
def initalize
s = HTTPServer.new(
if $port = 80
:Port => 80
else
:Port => 801
end
:DocumentRoot => "/home/" + $home + "/easyhtml/" + $pro
)
end
end
#declare the varibles
$home = ARGV[0]
$pro = ARGV[1]
$port = ARGV[2]
#load the server
EasyHTMLServer.new
Sorry, ignore me. I just re-read the post and noticed the problems with with
hash arguments too. Not sure how you solve this.
···
On Wed, Jul 8, 2009 at 9:58 PM, Ben Lovell <benjamin.lovell@gmail.com>wrote:
On Wed, Jul 8, 2009 at 9:41 PM, Alex Gore <gjgfuj@y7mail.com> wrote:
when i try to start webrick i get this message
./easyhtmlserver:12: syntax error, unexpected tASSOC, expecting kEND
:Port => 80
^
./easyhtmlserver:14: syntax error, unexpected tASSOC, expecting kEND
:Port => 801
^
./easyhtmlserver:11: warning: found = in conditional, should be ==
./easyhtmlserver:16: syntax error, unexpected tSYMBEG, expecting ')'
:DocumentRoot => "/home/" + $home + "/easyhtml/" + $pro
^
./easyhtmlserver:17: syntax error, unexpected ')', expecting kEND
./easyhtmlserver:28: syntax error, unexpected $end, expecting kEND
This should work:
spox wrote:
s = HTTPServer.new(:Port => $port == 80 ? 80 : 801, :DocumentRoot => 'etc...')
Yikes!
Are people really so adverse to creating simple methods that describe intent? (They also make testing easier )
# Pick a name that makes sense if this is not a good one ...
def default_port default=801
$port == 80 ? 80 : default
end
s = HTTPServer.new :Port => default_port, :DocumentRoot => 'etc...'
···
--
James Britt
www.jamesbritt.com - Playing with Better Toys
www.ruby-doc.org - Ruby Help & Documentation
www.rubystuff.com - The Ruby Store for Ruby Stuff
www.neurogami.com - Smart application development