Skip to content

replace warning() with cnd_warning()? #10

@jmbarbone

Description

@jmbarbone

Prints to the stderr(), right?

Calls .Internal(.dfltWarn(message, call)).

And uses options(warn):

warn:
integer value to set the handling of warning messages by the default warning handler. If warn is negative all warnings are ignored. If warn is zero (the default) warnings are stored until the top–level function returns. If 10 or fewer warnings were signalled they will be printed otherwise a message saying how many were signalled. An object called last.warning is created and can be printed through the function warnings. If warn is one, warnings are printed as they occur. If warn is two (or larger, coercible to integer), all warnings are turned into errors. While sometimes useful for debugging, turning warnings into errors may trigger bugs and resource leaks that would not have been triggered otherwise.

Replacing would lose functionality of options(warn = 1), or something.
All warnings may be printed immediately, which personally I wouldn't mind.

Or maybe look at globalCallingHandlers() to include custom printing for cnd::condition() classes.

Could probably do other things like:

  • only produce footer later: "See exports for more help: ?cnd::condition"
  • fall back to strict warning()
  • execute help()?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions