public(+predicate_indicator)

This predicate makes all predicates that are specified by the predicate indicator, list of predicate indicators or a predicate indicator sequence public, the predicates can be accessed by predicates from other files. This version of public can also be used inside modules, if so it is executed after the module has been loaded and compiled. For more information see the module system. The clause succeeds if at least a single clause indicator succeeds.  

see also: check_singleton/1 discontiguous/1 dynamic/1 dynamic/2 ensure_loaded/1 include/1 initialization/1 multifile/1 not_redo/1 private/0 private/1 public/0

Examples
public( test2 / 0 ). all predicates with the name 'test2' and no arguments are made public
public([ test2 / 0, apple / 1 ]). all 'test2' predicates with no arguments and all 'test_apple' predicates with one argument are made public

 

 

info@trinc-prolog.com