The conext switch is the overhead that happens if a PL/SQL function is called from a sql Statement.
By itsself a context switch is rather short, but many of them can add up to even hours.
Pragma UDF is a clever way to reduce the infamous context switch to almost nothing.
However PRAGMA UDF does work if he function contains date parameters. https://tinyurl.com/y7y8qwuf .
Its gets even worse. In versions greater than 12.1 pragma UDF does no longer work with varchar parameters. (It does in 12.1).
It can't be that the feature remains partly implemented.