Question

Given the following code:

def map(char, charmap)
    unless map = charmap[[char]]
     unless map = charmap[[char, c = input.getc]]
       input.ungetc(c) if c
       map = ''
     end
    end
  map
end

What is the double square brackets doing?

Thanks

Was it helpful?

Solution

It is application of the method [] taking an array as the argument.

Since the OP did not make clear, we cannot tell what charmap is, but for example if it were a hash, then charmap[[char, c = input.getc]] would return the value in charmap that corresponds to the key [char, input.getc].

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top