Class Window
Represents an expression builder that projects the input sequence into zero or more windows with boundaries defined by the encapsulated workflow.
The Window
operator groups the notifications of the source sequence into new observable sequences. The opening of each window is triggered by notifications emitted by the second sequence passed to the Window
node. The nested workflow operation is launched for every new emitted window, and closes that window when a value is emitted.
If a new window is created before the previous window is closed, then window will overlap, and any elements emitted during this period will be included in both windows. If at any moment there is no open window, elements emitted from the source sequence will be dropped.
public class Window : WorkflowExpressionBuilder, IWorkflowExpressionBuilder, INamedElement, IPropertyMappingBuilder, IExpressionBuilder
- Inheritance
-
Window
- Implements
- Inherited Members
- Extension Methods
Constructors
Window()
Initializes a new instance of the Window class.
public Window()
Window(ExpressionBuilderGraph)
Initializes a new instance of the Window class with the specified expression builder workflow.
public Window(ExpressionBuilderGraph workflow)
Parameters
workflow
ExpressionBuilderGraphThe expression builder workflow instance that will be used by this builder to generate the output expression tree.
Properties
ArgumentRange
Gets the range of input arguments that this expression builder accepts.
public override Range<int> ArgumentRange { get; }
Property Value
Methods
Build(IEnumerable<Expression>)
Generates an Expression node from a collection of input arguments. The result can be chained with other builders in a workflow.
public override Expression Build(IEnumerable<Expression> arguments)
Parameters
arguments
IEnumerable<Expression>A collection of Expression nodes that represents the input arguments.
Returns
- Expression
An Expression tree node.