[ Obsolete | Reference Manual | Alphabetic Index ]

# erase_macro(+TransTerm)

Erases the macro definition for TransTerm done in the current module

TransTerm
  Term in the form Atom/Integer.

### This built-in predicate is obsolete!

## Description

The macro (either global or local) defined for TransTerm in the current module is erased. If there was no macro definition, an error is raised.

### Modes and Determinism

- erase_macro(+) is det

### Modules

This predicate is sensitive to its module context (tool predicate, see @/2).

### Exceptions

(4) instantiation fault
  TransTerm is not instantiated.
(5) type error
  TransTerm not of form Atom/Integer.
(162) no macro transformation defined in this module
  No macro transformation defined in this module for TransTerm.

## Examples

       Success:
       erase_macro(a/1).    (if a macro was defined for a/1)
       Error:
       erase_macro(X).      (Error 4).
       erase_macro(a).      (Error 5).
       erase_macro(a/1).    (Error 162). % if no macro was defined.

## See Also

erase_macro / 2, current_macro / 4, define_macro / 3, phrase / 2, phrase / 3