File: Strings.rb

package info (click to toggle)
dlr-languages 20090805%2Bgit.e6b28d27%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 51,484 kB
  • ctags: 59,257
  • sloc: cs: 298,829; ruby: 159,643; xml: 19,872; python: 2,820; yacc: 1,960; makefile: 96; sh: 65
file content (49 lines) | stat: -rw-r--r-- 1,845 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
b = true
a = 1
$a = 10

def h(a)
  "[" + a + "]"
end

# precendence: static concat has higher precedence than a method call (RubyWay is wrong on pg 43)

puts "[" "a" "b".center(6) + "]"                  # ' [ab  ]'
puts "[" + "a" + "b".center(6) + "]"              # '[a  b   ]'
puts "[" + "a" + ("b".center(6)) + "]"            # '[a  b   ]'

puts "}"                                          # '}'
puts "#}"                                         # '#}'  
puts "#"                                          # '#'  
puts "##"                                         # '##'  
puts "a#{h" "}b"                                  # 'a[ ]b'
puts "a#{h" 15 + 10 "}b"                          # 'a[ 15 + 10 ]b'
puts "\#{a}"                                      # '#{a}'
puts "\#a"                                        # '#a'
puts "#{a}"                                       # '1'
puts "#a"                                         # '#a'
puts "\#%\##"                                     # '#%##'

puts "#{}"                                        # ''
puts "#{if b then 1 else 2 end}"                  # '1'
puts "#{"#{1 + 1}"}"                              # '2'
puts "#{x = 1}#{y = x + 2}"                       # '13'
puts "#{z = "#{x = 3}"}#{y = x + 2}"              # '35'

puts "x#$a x"                                     # 'x10 x'
puts "x\#$a"                                      # 'x#$a'
puts "x#$"a blah 346 ^&(*!@~)_+ "[0]              # 'x'
puts "x#$"a blah 346 ^&(*!@~)_+ "[-11..-1]        # '^&(*!@~)_+'

#error puts "#{"

b = "foo"

puts %q{abc}                                      # 'abc'
puts %q{a#{b}c}                                   # 'a#{b}c'
puts %Q{abc}                                      # 'abc'
puts %Q{a#{b}c}                                   # 'afooc'
puts %{a#{b}c}                                    # 'afooc'