Code Review
add tag
निरंजन
I need to have page references expandably. You can check the following MWE that shows my current attempt:

```
\documentclass{article}
\usepackage{hyperref}

\ExplSyntaxOn
\cs_new:Npn \__tmp_page_ref:n #1 {
  \cs_if_exist:cTF { r @ #1 } {
    \IfPackageLoadedTF { hyperref } {
      \exp_args:Nee \hyperlink {
        page. \exp_not:N \use_ii:nnnnn \use:c { r @ #1 }
      } {
        \exp_not:N \use_ii:nnnnn \use:c { r @ #1 }
      }
    } {
      \exp_not:N \use_ii:nnnnn \use:c { r @ #1 }
    }
  } {
    \textbf { ?? }
  }
}

\cs_gset_eq:NN \exppageref \__tmp_page_ref:n
\ExplSyntaxOff

\begin{document}
\section{foo}
\label{foo}

\exppageref{foo}


\end{document}
```

I wanted to know if this is a safe approach to take? Can there be any clashes with other things that deal with label-ref things? Especially tagged PDF and PDF management.

---
Edit: As per Ulrike's suggestion, the `exp` module name and `\tl_set:Nn` were discarded.

Enter question or answer id or url (and optionally further answer ids/urls from the same question) from

Separate each id/url with a space. No need to list your own answers; they will be imported automatically.