title: Meaning of ...interface{} (dot dot dot interface)
body: <p>Below is a piece of Go code I have question about.
  Specifically, what is <code>a</code> in this function?</p>
  
  <pre><code>func DPrintf(format string, a ...interface{}) (n int, err error) {
    if Debug &gt; 0 {
      n, err = fmt.Printf(format, a...)
    }
    return
  }
  </code></pre>
  
  <p>Could anyone tell me what the three dots are here?
  And what does <code>...interface{}</code> do?</p>