Class ConstructorCall

Direct Known Subclasses:
ConstructorArray, ConstructorArrayCast, ConstructorCompound, ConstructorCompoundCast, ConstructorDiagonal, ConstructorMatrixResize, ConstructorScalarCast, ConstructorSplat, ConstructorStruct

public abstract class ConstructorCall extends Expression
Base class representing a constructor call: type_name( args, ... ).
See Also:
  • Constructor Details

    • ConstructorCall

      protected ConstructorCall(int position, Type type, Expression[] arguments)
  • Method Details

    • convert

      public static @Nullable Expression convert(@NonNull Context context, int pos, @NonNull Type type, @NonNull List<Expression> args)
    • isConstructorCall

      public final boolean isConstructorCall()
      Overrides:
      isConstructorCall in class Expression
    • getComponentType

      public final Type getComponentType()
    • getArgument

      public final Expression getArgument()
    • getArguments

      public final @Unmodifiable Expression[] getArguments()
    • getConstantValue

      public @NonNull OptionalDouble getConstantValue(int i)
      Description copied from class: Expression
      Returns the i'th compile-time constant value within a literal or constructor. Indices which do not contain compile-time constant values will return empty. `vec4(1, vec2(2), 3)` contains four compile-time constants: (1, 2, 2, 3) `mat2(f)` contains four slots, and two are constant: (empty, 0, 0, empty)
      Overrides:
      getConstantValue in class Expression
    • toString

      public @NonNull String toString(int parentPrecedence)
      Specified by:
      toString in class Expression