title: How is the rlang `:=` operator defined?
body: <p>I'm trying to understand how does <code>:=</code> work in rlang. I found it <a href="https://github.com/r-lib/rlang/blob/HEAD/R/dots.R" rel="nofollow noreferrer">here</a> but I don't think it's very useful for me to understand how it works. I would like to know if it's defined in C language and where I can find it.</p>
  <p>Just to make it more clear, what I expect is the source code or any information related to the source code.</p>
  <p>Update: I've found its R source code in the link above and I've shown it below. But I don't really understand how it works as below. I doubt that the C language is used to defined this function.</p>
  <pre><code>#' @rdname dyn-dots
  #' @usage NULL
  #' @export
  `:=` &lt;- function(x, y) {
    abort(&quot;`:=` can only be used within dynamic dots.&quot;, call = caller_env())
  }
  </code></pre>