API Facepunch ActionGraphs
namespace

Facepunch.ActionGraphs

100 types

Classes

Type Name Description
class AccessorNodeDefinition<T> Base class for nodes that get / set values.
class ActionGraph Represents an async method as a directed graph. Control will enter through an "event" node, which can route signals thro
class ActionGraphCache Used to re-use ActionGraph instances when deserializing.
class ActionGraphDelegate<T> Wrapper for an ActionGraph invokable as a delegate, with optional overridden input values.
class ActionGraphExtensions Extension methods for action graphs.
class AddAssemblyResult Returned by Assembly).
class AlwaysInvokedAttribute
class BindingSurface
class CreateSubGraphNodeDelegate
class DefaultGraphLoader
class DefaultTypeLoader A default implementation of ITypeLoader with no access control.
class DelegateExtensions
class DescriptionAttribute
class DisplayInfo Display information of a NodeDefinition.
class Either
class Either<T1,T2,T3,T4,T5,T6,T7,TRest>
class Either<T1,T2,T3,T4,T5,T6,T7>
class Either<T1,T2,T3,T4,T5,T6>
class Either<T1,T2,T3,T4,T5>
class Either<T1,T2,T3,T4>
class Either<T1,T2,T3>
class Either<T1,T2>
class ExposeWhenCachedAttribute
class FileSystemGraphLoader
class GetNodeLibraryDelegate
class GroupAttribute
class HiddenAttribute
class IconAttribute
class ImpureAttribute
class Input<T> Helper type for input parameters of methods marked with NodeAttribute. The value of this input can be evaluated on deman
class InputDefinition Describes an input of a node.
class JsonExtensions Extension methods for Json types.
class Link A link connects one Input to a Output. They can either transmit values or signals. A signal will trigger the receiving n
class LinkTriggeredHandler Handler for LinkTriggered events.
class MethodBinder
class MethodCallNodeDefinition
class NewInstanceNodeDefinition
class Node The main building block of an action graph. Represents either an action or expression. An action node has input and outp
class NodeAttribute
class NodeBinding A collection of named node properties, inputs, and outputs with specific types, as provided by a NodeDefinition. Binding
class NodeDefinition Describes the behaviour and bindings of a node for use in an action graph.
class NodeDefinitionAttribute
class NodeInputs Named inputs of a node, that may either link to the outputs of other nodes, or be assigned a constant value.
class NodeLibrary Contains a library of NodeDefinitions, each with a unique identifier. Custom node definitions can be added with NodeDefi
class NodeOutputs Named outputs of a node, that may link to the inputs of other nodes.
class NodeParameters<T>
class NodeProperties Constant named values stored in a node.
class ObjectConverter
class OutputDefinition Describes an output of a node.
class ParameterDefinitionExtensions
class ParameterNames Special names for parameters of built-in node types.
class PropertyAttribute
class PropertyDefinition Describes a property of a node that should be configurable in the inspector.
class PureAttribute
class ReflectionExtensions
class SerializationOptions Controls how ActionGraphs are (de)serialized.
class Signal Node inputs and outputs of this type will transmit signals rather than values.
class TagsAttribute
class TargetAttribute
class TitleAttribute
class TypeConverter
class ValidationException Exception thrown when an invalid action graph is invoked.
class ValidationExtensions Extension methods related to validation and validation messages.
class Variable Variables have a name and type, and are local to each invocation of an ActionGraph. They are assigned with a SetVar node
class VoidTaskFaultHandler

Structs

Type Name Description
struct Constant
struct CreateSubGraphResult
struct InsertResult Elements added by a call to DeserializeInsert.
struct Null Represents a null reference.
struct ValidationMessage A message generated during validation with a context, level, and value.

Enums

Type Name Description
enum AssignmentKind Operations accessor nodes can perform.
enum InputFlags
enum MessageLevel Severity level of a validation message.
enum NodeKind Nodes can be lazily evaluated expression without any signals, or actions that execute when receiving a signal.
enum OutputFlags
enum ParameterFlags
enum PropertyFlags

Interfaces

Type Name Description
interface IActionGraphCache
interface IActionGraphDelegate Wrapper for an ActionGraph invokable as a delegate, with optional overridden input values.
interface IAlwaysInvokedAttribute Marks an output signal that will always be dispatched before the default output signal. Used on a parameter of a method
interface IDescriptionAttribute
interface IExposeWhenCachedAttribute Declares that instances of the marked type can't be cached in a ActionGraphCache. For example, if they might contain an
interface IGraphLoader
interface IGroupAttribute
interface IHiddenAttribute
interface IIconAttribute
interface IImpureAttribute Declares a method to have side effects, even if it's declared as readonly.
interface ILinkSource
interface IMessageContext Interface for action graph elements that can be the context of a ValidationMessage.
interface INodeAttribute Used to define ActionGraph nodes using static methods, properties, or constructors.
interface INodeContainer
interface INodeDefinitionAttribute Marks a class extending NodeDefinition that should be automatically added to a NodeLibrary when Assembly) is called.
interface IParameterDefinition Base interface for PropertyDefinition, InputDefinition and OutputDefinition.
interface IPropertyAttribute For binding in methods marked with a NodeAttribute, this parameter should only be configurable in the inspector as a pro
interface IPureAttribute Declares a method to not have any side effects, it only performs a calculation using its inputs and outputs a result.
interface ISourceLocation Interface for types that identify the source of an ActionGraph.
interface ITagsAttribute
interface ITargetAttribute For binding in methods marked with a NodeAttribute, this parameter represents the target instance object the method is e
interface ITitleAttribute
interface ITypeLoader An implementation of this interface will wrap reflection calls, allowing custom access control. See DefaultTypeLoader fo