<?xml version="1.0" encoding="utf-8" standalone="yes"?>

<?xml-stylesheet href="./_c74_ref.xsl" type="text/xsl"?>

<!--This is an automatically generated file. DO NOT EDIT THIS FILE DIRECTLY. Rather, use the _ref.xml files found in the 'edits' folder.-->
<c74object name="array.pop" module="max" category="Array">
	<digest>
		Remove an element from the end of an array.
	</digest>
	<description>
		A bang sent to the left inlet will shift elements from the end of the output array (the remaining array from the right outlet and the popped element is sent via the middle outlet) until the array is empty, at which point a bang is sent from the left outlet. Unlike the JavaScript implementation, the input array is not changed in place.
	</description>
	<!--METADATA-->
	<metadatalist>
		<metadata name="author">
			Cycling '74
		</metadata>
		<metadata name="tag">
			array
		</metadata>
	</metadatalist>
	<!--INLETS-->
	<inletlist>
		<inlet id="0" type="INLET_TYPE">
			<digest>
				bang to pop off last element
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
		<inlet id="1" type="INLET_TYPE">
			<digest>
				array in
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
	</inletlist>
	<!--OUTLETS-->
	<outletlist>
		<outlet id="0" type="OUTLET_TYPE">
			<digest>
				array is empty bang
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
		<outlet id="1" type="OUTLET_TYPE">
			<digest>
				popped element
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
		<outlet id="2" type="OUTLET_TYPE">
			<digest>
				popped array out
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
	</outletlist>
	<!--ARGUMENTS-->
	<objarglist>
		<objarg id="0" name="OBJARG_NAME" type="OBJARG_TYPE" optional="0">
			<digest>
				TEXT_HERE
			</digest>
			<description>
				TEXT_HERE
			</description>
		</objarg>
	</objarglist>
	<!--MESSAGES-->
	<methodlist>
		<method name="bang">
			<arglist />
			<digest>
				Pop off the last element in an array
			</digest>
			<description>
				Pop off the last element in an array from the right inlet. The updated array will appear out the right outlet. The popped element will print out the middle outlet.
				<br>
				</br>
				<br>
				</br>
				If no elements are remaining in the array, a bang will be sent out the leftmost outlet.
			</description>
		</method>
		<method name="int">
			<arglist>
				<arg name="value" type="int" optional="0" />
			</arglist>
			<digest>
				Convert an integer to an array from the right inlet.
			</digest>
			<description>
				Convert an integer to an array from the right inlet, then process as described for the <m>array</m> message.
			</description>
		</method>
		<method name="float">
			<arglist>
				<arg name="value" type="float" optional="0" />
			</arglist>
			<digest>
				Convert a floating-point to an array from the right inlet.
			</digest>
			<description>
				Convert an incoming floating-point number to an array from the right inlet, then process as described for the <m>array</m> message.
			</description>
		</method>
		<method name="list">
			<arglist>
				<arg name="list-value" type="list" optional="0" />
			</arglist>
			<digest>
				Convert a list to an array from the right inlet.
			</digest>
			<description>
				Convert an incoming list to an array from the right inlet, then process as described for the <m>array</m> message.
			</description>
		</method>
		<method name="anything">
			<arglist>
				<arg name="list-value" type="list" optional="0" />
			</arglist>
			<digest>
				Convert a list to an array from the right inlet.
			</digest>
			<description>
				Convert an incoming list to an array from the right inlet, then process as described for the <m>array</m> message.
			</description>
		</method>
		<method name="array">
			<arglist>
				<arg name="array-value" type="list" optional="0" />
			</arglist>
			<digest>
				Set the internal array from the right inlet.
			</digest>
			<description>
				Set the internal array to pop from the right inlet.
			</description>
		</method>
		<method name="clear">
			<arglist />
			<digest>
				Reset the internal state of the object.
			</digest>
			<description>
				All internal arrays will be cleared when the <m>clear</m> message is sent to the left inlet.
			</description>
		</method>
		<method name="dictionary">
			<arglist>
				<arg name="dictionary-value" type="list" optional="0" />
			</arglist>
			<digest>
				Wrap a dictionary object in an array from the right inlet.
			</digest>
			<description>
				Wrap an incoming dictionary object in an array from the right inlet, then process as described for the <m>array</m> message.
			</description>
		</method>
		<method name="string">
			<arglist>
				<arg name="string-value" type="list" optional="0" />
			</arglist>
			<digest>
				Wrap a string object in an array from the right inlet.
			</digest>
			<description>
				Wrap a string object in an array from the right inlet, then process as described for the <m>array</m> message.
			</description>
		</method>
	</methodlist>
	<!--ATTRIBUTES-->
	<attributelist>
		<attribute name="wrapmode" get="1" set="1" type="int" size="1">
			<digest>
				Wrap elements in array
			</digest>
			<description>
				TEXT_HERE
			</description>
			<attributelist>
				<attribute name="default" get="1" set="1" type="int" size="1" value="0" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Wrap elements in array" />
				<attribute name="style" get="1" set="1" type="symbol" size="1" value="onoff" />
			</attributelist>
		</attribute>
	</attributelist>
	<!--EXAMPLE-->
	<examplelist>
		<example caption="" img="" />
	</examplelist>
	<!--SEEALSO-->
	<seealsolist>
		<seealso name="array" />
		<seealso name="array.concat" />
		<seealso name="array.push" />
		<seealso name="array.shift" />
		<seealso name="array.unshift" />
		<seealso name="zl.queue" />
		<seealso name="zl.stack" />
	</seealsolist>
</c74object>
