2006-02-10 17:44:05 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								<?xml version="1.0" encoding="utf-8"?> 
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 20:07:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< html  xmlns = "http://www.w3.org/1999/xhtml"  xml:lang = "en" > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 20:07:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< head > 
							 
						 
					
						
							
								
									
										
										
										
											2006-02-10 17:44:05 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
									< meta  http-equiv = "content-type"  content = "application/xml+xhtml; charset=utf-8"  / > 
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
									< title > Logtalk predicate directive: public/1< / title > 
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
									< link  rel = "stylesheet"  href = "../../screen.css"  type = "text/css"  media = "screen" / > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
									< link  rel = "stylesheet"  href = "../../print.css"  type = "text/css"  media = "print" / > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 20:07:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< / head > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< body > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< div  class = "top-left" > Logtalk reference manual< / div >  
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< div  class = "top-right" > Predicate directive: public/1< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< div  class = "bottom-left" > < span  class = "page" / > < / div >  
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< div  class = "bottom-right" > < span  class = "page" / > < / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< div  class = "navtop" > < a  href = "../../index.html" > contents< / a >  >  < a  href = "../index.html" > reference manual< / a >  >  < a  href = "../index.html#directives" > directives< / a > < / div > 
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< h2  class = "code" > public/1< / h2 > 
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 20:07:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< h4 > Description< / h4 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2004-07-25 18:47:43 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< pre > public(Functor/Arity)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								public(Functor1/Arity1, Functor2/Arity2, ...)
							 
						 
					
						
							
								
									
										
										
										
											2004-10-17 22:37:16 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								public([Functor1/Arity1, Functor2/Arity2, ...])
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								public(Functor//Arity)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								public(Functor1//Arity1, Functor2//Arity2, ...)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								public([Functor1//Arity1, Functor2//Arity2, ...])< / pre > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 20:07:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< p > 
							 
						 
					
						
							
								
									
										
										
										
											2004-10-17 22:37:16 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								Declares public predicates and public grammar rule non-terminals. A public predicate can be called from any object. A public non-terminal can be used as an argument in < a  title = "Consult reference manual"  href = "../methods/phrase2.html" > < code > phrase/2< / code > < / a >  and < a  title = "Consult reference manual"  href = "../methods/phrase3.html" > < code > phrase/3< / code > < / a >  messages sent from any object.
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 20:07:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< h4 > Template and modes< / h4 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2004-10-17 22:37:16 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< pre > public(+predicate_indicator_term)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								public(+non_terminal_indicator_term)< / pre > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 20:07:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< h4 > Examples< / h4 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< pre > :- public(ancestor/1).
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 20:07:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								:- public(instance/1, instances/1).
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								:- public([leaf/1, leaves/1]).< / pre > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 20:07:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< div  class = "footer" > 
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
									< div  class = "navbottom" > < a  href = "protected1.html" > previous< / a >  | < a  href = "../../glossary.html" > glossary< / a >  | < a  href = "uses2.html" > next< / a > < / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
									< div  class = "copyright" > Copyright ©  < a  href = "mailto:pmoura@logtalk.org" > Paulo Moura< / a >  —  < a  href = "http://www.logtalk.org" > Logtalk.org< / a > < / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
									< div  class = "footnote" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
										< span  class = "validators" > < a  href = "http://validator.w3.org/check/referer" > XHTML< / a >  + < a  href = "http://jigsaw.w3.org/css-validator/check/referer" > CSS< / a > < / span > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
										< span  class = "date" > Last updated on: November 16, 2005< / span > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
									< / div > 
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< / div > 
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< / body > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 20:07:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< / html >