Show / Hide Table of Contents

Class Cell<T>

Denotes an atomic mutable value

Inheritance
object
Cell<T>
Implements
INotifyReversableExpression<T>
INotifyExpression<T>
INotifyExpression
INotifyReversableValue<T>
INotifyValue<T>
INotifiable
IDisposable
Inherited Members
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: NMF.Expressions
Assembly: NMF.Expressions.dll
Syntax
public class Cell<T> : INotifyReversableExpression<T>, INotifyExpression<T>, INotifyExpression, INotifyReversableValue<T>, INotifyValue<T>, INotifiable, IDisposable
Type Parameters
Name Description
T

The type of the cell

Properties

| Edit this page View Source

CanBeConstant

Determines whether the expression can be replaced by a constant expression

Declaration
public bool CanBeConstant { get; }
Property Value
Type Description
bool
| Edit this page View Source

Dependencies

Nodes that notify this node.

Declaration
public IEnumerable<INotifiable> Dependencies { get; }
Property Value
Type Description
IEnumerable<INotifiable>
| Edit this page View Source

ExecutionMetaData

Used by the execution engine during incremental execution.

Declaration
public ExecutionMetaData ExecutionMetaData { get; }
Property Value
Type Description
ExecutionMetaData
| Edit this page View Source

IsConstant

Determines whether the current expression is a constant

Declaration
public bool IsConstant { get; }
Property Value
Type Description
bool
| Edit this page View Source

IsParameterFree

Determines whether the current expression contains parameters

Declaration
public bool IsParameterFree { get; }
Property Value
Type Description
bool
| Edit this page View Source

IsReversable

Checks whether it is allowed to set values

Declaration
public bool IsReversable { get; }
Property Value
Type Description
bool
| Edit this page View Source

Successors

The nodes that will get notified by this node.

Declaration
public ISuccessorList Successors { get; }
Property Value
Type Description
ISuccessorList
| Edit this page View Source

Value

Gets or sets the current value

Declaration
public T Value { get; set; }
Property Value
Type Description
T
| Edit this page View Source

ValueObject

Gets the current value as object

Declaration
public object ValueObject { get; }
Property Value
Type Description
object

Methods

| Edit this page View Source

ApplyParameters(IDictionary<string, object>, IDictionary<INotifiable, INotifiable>)

Applies the given set of parameters to the expression

Declaration
public INotifyExpression<T> ApplyParameters(IDictionary<string, object> parameters, IDictionary<INotifiable, INotifiable> trace)
Parameters
Type Name Description
IDictionary<string, object> parameters

A set of parameter values

IDictionary<INotifiable, INotifiable> trace

A trace to make sure parameters are only applied once for every DDG node

Returns
Type Description
INotifyExpression<T>

A new expression with all parameter placeholders replaced with the parameter values

Remarks

In case that the current expression is parameter free, it simply returns itself

| Edit this page View Source

Dispose()

Declaration
public void Dispose()
| Edit this page View Source

Notify(IList<INotificationResult>)

Gets called when one of the dependencies signals a notification.

Declaration
public INotificationResult Notify(IList<INotificationResult> sources)
Parameters
Type Name Description
IList<INotificationResult> sources

Contains information about what triggered this notification.

Returns
Type Description
INotificationResult

An object describing the changes that happened in this notification.

| Edit this page View Source

OnValueChanged(ValueChangedEventArgs)

Gets called when the value of this cell changed

Declaration
protected virtual void OnValueChanged(ValueChangedEventArgs e)
Parameters
Type Name Description
ValueChangedEventArgs e

the event data

| Edit this page View Source

OnValueChanging(ValueChangedEventArgs)

Gets called when the value of this cell is about to change

Declaration
protected virtual void OnValueChanging(ValueChangedEventArgs e)
Parameters
Type Name Description
ValueChangedEventArgs e

the event data

| Edit this page View Source

Reduce()

Simplifies the current expression

Declaration
public INotifyExpression<T> Reduce()
Returns
Type Description
INotifyExpression<T>

A simpler expression repüresenting the same incremental value (e.g. a constant if this expression can be constant), otherwise itself

Events

| Edit this page View Source

ValueChanged

Gets fired when the value changed

Declaration
public event EventHandler<ValueChangedEventArgs> ValueChanged
Event Type
Type Description
EventHandler<ValueChangedEventArgs>
| Edit this page View Source

ValueChanging

Declaration
public event EventHandler<ValueChangedEventArgs> ValueChanging
Event Type
Type Description
EventHandler<ValueChangedEventArgs>

Implements

INotifyReversableExpression<T>
INotifyExpression<T>
INotifyExpression
INotifyReversableValue<T>
INotifyValue<T>
INotifiable
IDisposable

Extension Methods

ExpressionExtensions.AsOne<T>(T)
DebugExtensions.ExportToDgml(INotifiable, string)
DebugExtensions.Visualize(INotifiable)
ReversableExtensions.AsReversable<T>(INotifyValue<T>, Action<T>)
  • Edit this page
  • View Source
In this article
Back to top Generated by DocFX