title: Julia: How can I define the type of an argument to a function as an Array of Tuples?
body: <p>I have a 1-dimensional Array of Tuples which I need to pass to a function defined as</p>
  
  <pre><code>function f(a::Array{Tuple{Vararg{String}}, 1}) 
      #do some processing
  end
  </code></pre>
  
  <p>Each Tuple can have any number of String elements, but the number of elements will be the same for all the Tuples in the Array. For example, the Array could look like <code>[("x1","x2"),("y1","y2")]</code> or <code>[("x1","x2","x3"),("y1","y2","y3")]</code> etc. Hence the usage of Vararg{String} for this.</p>
  
  <p>Now, when I run <code>f([("x1","x2"),("y1","y2")])</code>, it throws an error </p>
  
  <blockquote>
    <p>"MethodError: no method matching f(::Array{Tuple{String,String},1})"</p>
  </blockquote>
  
  <p>How should I modify the function definition so that this works?</p>