; docformat = 'rst' ;+ ; In IDL 8.0, the number of elements of an object can be overloaded with the ; `_overloadSize` method for objects which inherit from `IDL_Object`. It is ; sometimes useful to know how many array elements are present, not the ; overloaded value. ; ; :Returns: ; long ; ; :Params: ; var : in, optional, type=any ; variable to find number of elements of ; ; :Keywords: ; no_operatoroverload : in, optional, type=boolean ; set to find the number of array elements in var, not the operator ; overloaded value ;- function mg_n_elements, var, no_operatoroverload=noOperatoroverload compile_opt strictarr if (~keyword_set(noOperatoroverload) || size(var, /type) ne 11) then begin return, n_elements(var) endif return, n_elements(obj_valid(var)) end