support `primary` syntax