<?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="unpack" module="max" category="Lists">
	<digest>
		Break a list into individual messages
	</digest>
	<description>
		Breaks a list into its elements, and sends each item out a separate outlet.
	</description>
	<!--METADATA-->
	<metadatalist>
		<metadata name="tag">
			Lists
		</metadata>
	</metadatalist>
	<!--INLETS-->
	<inletlist>
		<inlet id="0" type="INLET_TYPE">
			<digest>
				List to be Unpacked
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
		<inlet id="1" type="INLET_TYPE">
			<digest>
				List to be Unpacked
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
	</inletlist>
	<!--OUTLETS-->
	<outletlist>
		<outlet id="0" type="OUTLET_TYPE">
			<digest>
				Element 1 of List
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
		<outlet id="1" type="OUTLET_TYPE">
			<digest>
				Element 2 of List
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
	</outletlist>
	<!--ARGUMENTS-->
	<objarglist>
		<objarg name="list-elements" optional="1" type="any">
			<digest>
				List elements
			</digest>
			<description>
				The number of outlets is determined by the number of arguments. The arguments can be any combination of ints, floats, and symbols. The argument specifies the output of the <o>unpack</o> object's outlets; the input type is forced to the outlet type that is defined. If no argument is typed in, <o>unpack</o> will have two int outlets.
			</description>
			<discussion>
				The conversion from incoming list types to output types is very specific. Symbols received in list elements defined as numbers will output 0. Numbers received in list elements defined as symbols will be converted to the empty symbol (&quot;&quot;).
			</discussion>
		</objarg>
	</objarglist>
	<!--MESSAGES-->
	<methodlist>
		<method name="bang">
			<arglist />
			<digest>
				Output stored elements
			</digest>
			<description>
				Causes each stored item of a list to be sent out the corresponding outlet.
			</description>
		</method>
		<method name="int">
			<arglist>
				<arg name="input" optional="0" type="int" />
			</arglist>
			<digest>
				Output a single element
			</digest>
			<description>
				The number is sent out the left outlet.
			</description>
		</method>
		<method name="float">
			<arglist>
				<arg name="input" optional="0" type="float" />
			</arglist>
			<digest>
				Output a single element
			</digest>
			<description>
				The number is sent out the left outlet.
			</description>
		</method>
		<method name="list">
			<arglist>
				<arg name="input" optional="0" type="list" />
			</arglist>
			<digest>
				Output list elements
			</digest>
			<description>
				Each item in the list (up to the number of outlets) is sent out the outlet corresponding to its position in the list.
			</description>
		</method>
		<method name="anything">
			<arglist>
				<arg name="input" optional="0" type="any" />
			</arglist>
			<digest>
				Output elements
			</digest>
			<description>
				Performs the same function as <m>list</m>.
			</description>
		</method>
	</methodlist>
	<!--ATTRIBUTES-->
	<!--EXAMPLE-->
	<examplelist>
		<example img="unpack.png" caption="Each item in a list can be sent to a different place" />
	</examplelist>
	<!--SEEALSO-->
	<seealsolist>
		<seealso name="iter" />
		<seealso name="listfunnel" />
		<seealso name="join" />
		<seealso name="pack" />
		<seealso name="pak" />
		<seealso name="spray" />
		<seealso name="unjoin" />
		<seealso name="zl" />
		<seealso name="basicchapter09" module="max" type="tutorial" />
	</seealsolist>
	<misc name="Output">
		<entry name="int">
			<description>
				Each item of the list received in the inlet is sent out the corresponding outlet. The first item in the list is sent out the leftmost outlet, and so on.
			</description>
		</entry>
		<entry name="float">
			<description>
				If the outlet has been initialized with a float argument, then an int or a symbol from the input list will be converted to float before being sent out that outlet.
			</description>
		</entry>
		<entry name="symbol">
			<description>
				A symbol in the input list will be sent out the corresponding outlet if that outlet has been initialized with a symbol argument.
			</description>
		</entry>
	</misc>
</c74object>
