docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class ForEach

    Loops over each element of a collection.

    Inheritance
    object
    GraphElement<FlowGraph>
    Unit
    LoopUnit
    ForEach
    Implements
    IUnit
    IGraphElementWithDebugData
    IGraphElement
    IGraphItem
    INotifiedCollectionItem
    IDisposable
    IPrewarmable
    IAotStubbable
    IIdentifiable
    IAnalyticsIdentifiable
    Inherited Members
    LoopUnit.enter
    LoopUnit.exit
    LoopUnit.body
    Unit.CreateDebugData()
    Unit.AfterAdd()
    Unit.BeforeRemove()
    Unit.Instantiate(GraphReference)
    Unit.Uninstantiate(GraphReference)
    Unit.CopyFrom(Unit)
    Unit.canDefine
    Unit.failedToDefine
    Unit.isDefined
    Unit.AfterDefine()
    Unit.BeforeUndefine()
    Unit.EnsureDefined()
    Unit.Define()
    Unit.RemoveUnconnectedInvalidPorts()
    Unit.controlInputs
    Unit.controlOutputs
    Unit.valueInputs
    Unit.valueOutputs
    Unit.invalidInputs
    Unit.invalidOutputs
    Unit.inputs
    Unit.outputs
    Unit.validInputs
    Unit.validOutputs
    Unit.ports
    Unit.invalidPorts
    Unit.validPorts
    Unit.onPortsChanged
    Unit.PortsChanged()
    Unit.defaultValues
    Unit.relations
    Unit.connections
    Unit.Disconnect()
    Unit.isControlRoot
    Unit.EnsureUniqueInput(string)
    Unit.EnsureUniqueOutput(string)
    Unit.ControlInput(string, Func<Flow, ControlOutput>)
    Unit.ControlInputCoroutine(string, Func<Flow, IEnumerator>)
    Unit.ControlInputCoroutine(string, Func<Flow, ControlOutput>, Func<Flow, IEnumerator>)
    Unit.ControlOutput(string)
    Unit.ValueInput(Type, string)
    Unit.ValueInput<T>(string)
    Unit.ValueInput<T>(string, T)
    Unit.ValueOutput(Type, string)
    Unit.ValueOutput(Type, string, Func<Flow, object>)
    Unit.ValueOutput<T>(string)
    Unit.ValueOutput<T>(string, Func<Flow, T>)
    Unit.Requirement(ValueInput, ControlInput)
    Unit.Requirement(ValueInput, ValueOutput)
    Unit.Assignment(ControlInput, ValueOutput)
    Unit.Succession(ControlInput, ControlOutput)
    Unit.position
    Unit.definitionException
    Unit.GetAnalyticsIdentifier()
    GraphElement<FlowGraph>.guid
    GraphElement<FlowGraph>.BeforeAdd()
    GraphElement<FlowGraph>.AfterRemove()
    GraphElement<FlowGraph>.Dispose()
    GraphElement<FlowGraph>.InstantiateNest()
    GraphElement<FlowGraph>.UninstantiateNest()
    GraphElement<FlowGraph>.dependencyOrder
    GraphElement<FlowGraph>.HandleDependencies()
    GraphElement<FlowGraph>.graph
    GraphElement<FlowGraph>.deserializationDependencies
    GraphElement<FlowGraph>.GetAotStubs(HashSet<object>)
    GraphElement<FlowGraph>.Prewarm()
    GraphElement<FlowGraph>.CopyFrom(GraphElement<FlowGraph>)
    GraphElement<FlowGraph>.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    Namespace: Unity.VisualScripting
    Assembly: Unity.VisualScripting.Flow.dll
    Syntax
    [UnitTitle("For Each Loop")]
    [UnitCategory("Control")]
    [UnitOrder(10)]
    public class ForEach : LoopUnit, IUnit, IGraphElementWithDebugData, IGraphElement, IGraphItem, INotifiedCollectionItem, IDisposable, IPrewarmable, IAotStubbable, IIdentifiable, IAnalyticsIdentifiable

    Properties

    collection

    The collection over which to loop.

    Declaration
    [DoNotSerialize]
    public ValueInput collection { get; }
    Property Value
    Type Description
    ValueInput

    currentIndex

    The current index of the loop.

    Declaration
    [DoNotSerialize]
    [PortLabel("Index")]
    public ValueOutput currentIndex { get; }
    Property Value
    Type Description
    ValueOutput

    currentItem

    The current item of the loop.

    Declaration
    [DoNotSerialize]
    [PortLabel("Item")]
    public ValueOutput currentItem { get; }
    Property Value
    Type Description
    ValueOutput

    currentKey

    The key of the current item of the loop.

    Declaration
    [DoNotSerialize]
    [PortLabel("Key")]
    public ValueOutput currentKey { get; }
    Property Value
    Type Description
    ValueOutput

    dictionary

    Declaration
    [Serialize]
    [Inspectable]
    [UnitHeaderInspectable("Dictionary")]
    [InspectorToggleLeft]
    public bool dictionary { get; set; }
    Property Value
    Type Description
    bool

    Methods

    Definition()

    Declaration
    protected override void Definition()
    Overrides
    LoopUnit.Definition()

    Loop(Flow)

    Declaration
    protected override ControlOutput Loop(Flow flow)
    Parameters
    Type Name Description
    Flow flow
    Returns
    Type Description
    ControlOutput
    Overrides
    LoopUnit.Loop(Flow)

    LoopCoroutine(Flow)

    Declaration
    protected override IEnumerator LoopCoroutine(Flow flow)
    Parameters
    Type Name Description
    Flow flow
    Returns
    Type Description
    IEnumerator
    Overrides
    LoopUnit.LoopCoroutine(Flow)

    Implements

    IUnit
    IGraphElementWithDebugData
    IGraphElement
    IGraphItem
    INotifiedCollectionItem
    IDisposable
    IPrewarmable
    IAotStubbable
    IIdentifiable
    IAnalyticsIdentifiable

    Extension Methods

    Cloning.Clone(object, ICloner, bool)
    Cloning.Clone(object, ICloner, bool)
    Cloning.CloneViaFakeSerialization(object)
    Cloning.CloneViaFakeSerialization(object)
    ConversionUtility.ConvertTo(object, Type)
    ConversionUtility.ConvertTo(object, Type)
    ConversionUtility.ConvertTo<T>(object)
    ConversionUtility.ConvertTo<T>(object)
    ConversionUtility.IsConvertibleTo(object, Type, bool)
    ConversionUtility.IsConvertibleTo(object, Type, bool)
    ConversionUtility.IsConvertibleTo<T>(object, bool)
    ConversionUtility.IsConvertibleTo<T>(object, bool)
    Serialization.Serialize(object, bool)
    Serialization.Serialize(object, bool)
    TypeUtility.ToShortString(object, int)
    TypeUtility.ToShortString(object, int)
    UnityObjectUtility.IsUnityNull(object)
    UnityObjectUtility.IsUnityNull(object)
    UnityObjectUtility.ToSafeString(object)
    UnityObjectUtility.ToSafeString(object)
    XAnalyserProvider.Analyser(object, GraphReference)
    XAnalyserProvider.Analyser(object, IGraphContext)
    XAnalyserProvider.Analyser<TAnalyser>(object, GraphReference)
    XAnalyserProvider.Analyser<TAnalyser>(object, IGraphContext)
    XAnalyserProvider.Analysis(object, GraphReference)
    XAnalyserProvider.Analysis(object, IGraphContext)
    XAnalyserProvider.Analysis<TAnalysis>(object, GraphReference)
    XAnalyserProvider.Analysis<TAnalysis>(object, IGraphContext)
    XDescriptorProvider.Describe(object)
    XDescriptorProvider.Description(object)
    XDescriptorProvider.Description<TDescription>(object)
    XDescriptorProvider.Descriptor(object)
    XDescriptorProvider.Descriptor<TDescriptor>(object)
    XDescriptorProvider.HasDescriptor(object)
    Cloning.CloneViaFakeSerialization<T>(T)
    Cloning.CloneViaFakeSerialization<T>(T)
    Cloning.Clone<T>(T, ICloner, bool)
    Cloning.Clone<T>(T, ICloner, bool)
    LinqUtility.Yield<T>(T)
    LinqUtility.Yield<T>(T)
    Serialization.CloneViaSerializationInto<TSource, TDestination>(TSource, ref TDestination, bool)
    Serialization.CloneViaSerializationInto<TSource, TDestination>(TSource, ref TDestination, bool)
    Serialization.CloneViaSerialization<T>(T, bool)
    Serialization.CloneViaSerialization<T>(T, bool)
    GraphsExceptionUtility.GetException(IGraphElementWithDebugData, GraphPointer)
    GraphsExceptionUtility.HandleException(IGraphElementWithDebugData, GraphPointer, Exception)
    GraphsExceptionUtility.SetException(IGraphElementWithDebugData, GraphPointer, Exception)
    XUnit.CompatibleValueInput(IUnit, Type)
    XUnit.CompatibleValueOutput(IUnit, Type)
    In This Article
    Back to top
    Copyright © 2025 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)