If you read the last sentence of the "Overriding Built-in Functions" section
you'll see it says"

       Finally, some built-ins (e.g. "exists" or "grep") can't be overridden.

How do you determine which built-ins cannot be overridden?  Built-ins that do
not have a prototype cannot be overridden.  How do you determine which
built-ins have a prototype?

$ perl -le 'print prototype "CORE::exists"'

$ perl -le 'print prototype "CORE::grep"'

$ perl -le 'print prototype "CORE::print"'

$ perl -le 'print prototype "CORE::split"'

$ perl -le 'print prototype "CORE::substr"'
$$;$$
$ perl -le 'print prototype "CORE::splice"'
\@;$$@
$ perl -le 'print prototype "CORE::index"'
$$;$
$ perl -le 'print prototype "CORE::open"'
*;$@

Thanks John great info. I'm not trying to override a built in (IE make calls to print() do as I plase) more like clone it (make calls to foobarf() work exactly like if it was print()).

I think the prototype info may have to do with that but I was unable to goto &[different things to try here]open....

oh well I did learn some things and that was the point

Thanks, as always for yout excellent info


--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>


Reply via email to