Contenido principal

mustBeLessThanOrEqual

Validate that value is less than or equal to another value

Description

mustBeLessThanOrEqual(value,c) throws an error if any elements in value are greater than c. This function does not return a value.

mustBeLessThanOrEqual calls the le function to determine if value is less than or equal to c. (since R2026a)

Class support: All numeric classes, logical, and MATLAB® classes that implement le.

This function ignores empty values in the first input argument. Therefore, no error is thrown when the property or function argument value is empty.

example

Examples

collapse all

Use mustBeLessThanOrEqual to validate that the values in the first input are less than or equal to the value of the second input.

mustBeLessThanOrEqual([3 4 5],2)
Value must be less than or equal to 2.

Restrict property values to be less than or equal to a specified value.

This class constrains the value of Prop1 to be less than or equal to 2.

classdef MyClass
   properties
      Prop1 {mustBeLessThanOrEqual(Prop1,2)}
   end
end

Create an object and assign a value to its property.

obj = MyClass;
obj.Prop1 = 3;
Error setting property 'Prop1' of class 'MyClass'. Value must be less than or equal to 2.

When you assign a value to the property, MATLAB calls mustBeLessThanOrEqual with the value being assigned to the property. mustBeLessThanOrEqual issues an error because the value 3 is not less than or equal to 2.

This function restricts the input argument to be values that are less than or equal to 5.

function r = mbLessThanOrEqual(x)
    arguments
        x {mustBeLessThanOrEqual(x,5)}
    end
    r = x + 5;
end

Calling the function with a vector that contains values that are not less than or equal to 5 does not meet the requirements defined with mustBeLessThanOrEqual and results in an error.

x = [1.27, 4.54, 3.9, 5.1, .531];
r = mbLessThanOrEqual(x);
Error using mbLessThanOrEqual (line 3)
 r = mbLessThanOrEqual(x);
                       ^
Invalid argument at position 1. Value must be less than or equal to 5.

Input Arguments

collapse all

Value to validate, specified as a scalar or an array of one of these types:

  • logical, char, string, or numeric class

  • MATLAB classes that implement le

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | categorical | datetime | duration | table | timetable
Complex Number Support: Yes

Constant value that the value argument must be less than or equal to, specified as a scalar or an array of one of these types:

  • logical, char, string, or numeric class

  • MATLAB classes that implement le

Inputs c and value must have compatible sizes (for example, value is an M-by-N matrix and c is a scalar or 1-by-N row vector). For more information, see Compatible Array Sizes for Basic Operations.

Before R2026a: c must be scalar.

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | categorical | datetime | duration | table | timetable
Complex Number Support: Yes

Tips

  • mustBeLessThanOrEqual is designed to be used for property and function argument validation.

Extended Capabilities

expand all

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

GPU Code Generation
Generate CUDA® code for NVIDIA® GPUs using GPU Coder™.

Version History

Introduced in R2017a

expand all