docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class Query<TData, TPayload>

    A Query defines an operation that can be used to filter a data set.

    Inheritance
    object
    Query<TData, TPayload>
    Query<T>
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: UnityEditor.Search
    Assembly: com.unity.quicksearch.dll
    Syntax
    public class Query<TData, TPayload> where TPayload : class
    Type Parameters
    Name Description
    TData

    The filtered data type.

    TPayload

    The payload type.

    Properties

    errors

    List of QueryErrors.

    Declaration
    public ICollection<QueryError> errors { get; }
    Property Value
    Type Description
    ICollection<QueryError>

    text

    The text that generated this query.

    Declaration
    public string text { get; }
    Property Value
    Type Description
    string

    tokens

    List of tokens found in the query.

    Declaration
    public ICollection<string> tokens { get; }
    Property Value
    Type Description
    ICollection<string>

    valid

    Indicates if the query is valid or not.

    Declaration
    public bool valid { get; }
    Property Value
    Type Description
    bool

    Methods

    Apply(TPayload)

    Apply the filtering on a payload.

    Declaration
    public virtual IEnumerable<TData> Apply(TPayload payload = null)
    Parameters
    Type Name Description
    TPayload payload

    The data to filter

    Returns
    Type Description
    IEnumerable<TData>

    A filtered IEnumerable.

    GetNodeAtPosition(int)

    Get the query node located at the specified position in the query.

    Declaration
    public IQueryNode GetNodeAtPosition(int position)
    Parameters
    Type Name Description
    int position

    The position of the query node in the text.

    Returns
    Type Description
    IQueryNode

    An IQueryNode.

    Optimize(bool, bool)

    Optimize the query by optimizing the underlying filtering graph.

    Declaration
    public void Optimize(bool propagateNotToLeaves, bool swapNotToRightHandSide)
    Parameters
    Type Name Description
    bool propagateNotToLeaves

    Propagate "Not" operations to leaves, so only leaves can have "Not" operations as parents.

    bool swapNotToRightHandSide

    Swaps "Not" operations to the right hand side of combining operations (i.e. "And", "Or"). Useful if a "Not" operation is slow.

    Optimize(QueryGraphOptimizationOptions)

    Optimize the query by optimizing the underlying filtering graph.

    Declaration
    public void Optimize(QueryGraphOptimizationOptions options)
    Parameters
    Type Name Description
    QueryGraphOptimizationOptions options

    Optimization options.

    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)