FExpression

Represents an HLSL expression.

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

References

Module

Engine

Header

/Engine/Source/Runtime/Engine/Public/HLSLTree/HLSLTree.h

Include

#include "HLSLTree/HLSLTree.h"

Syntax

class FExpression : public UE::HLSLTree::FNode

Remarks

Represents an HLSL expression. This is a piece of code that evaluates to a value, but has no side effects. Unlike statements, expressions are not expected to execute in any particular order. They may be cached (or not) in generated code, without the underlying implementation needing to care. Expressions track the outer-most scope in which they're accessed. The generated HLSL code will ensure they are defined in that scope. Examples include constant literals, variable accessors, and various types of math operations This is an abstract base class, with derived classes representing various types of expression

Variables

Name Description

Public variable

FScope *

 

ParentScope

Functions

Name Description

Public function Const

bool

 

EmitCode

(
    FEmitContext& Context,
    FExpressionEmitResult& OutResult
)

Emits code for the given expression, either HLSL code or preshader bytecode

Overridden from FNode

Name Description

Public function Virtual

ENodeVisitRe...

 

Visit

(
    FNodeVisitor& Visitor
)