AutoCAD 2012 帮助
 
vl-every
 
 
 

Checks whether the predicate is true for every element combination

(vl-every predicate-function list [list]...)

The vl-every function passes the first element of each supplied list as an argument to the test function, followed by the next element from each list, and so on. Evaluation stops as soon as one of the lists runs out.

Arguments

predicate-function

The test function. This can be any function that accepts as many arguments as there are lists provided with vl-every, and returns T on any user-specified condition. The predicate-function value can take one of the following forms:

  • A symbol (function name)
  • '(LAMBDA (A1 A2) ...)
  • (FUNCTION (LAMBDA (A1 A2) ...))
list

A list to be tested.

Return Values

T, if predicate-function returns a non-nil value for every element combination; otherwise nil.

Examples

Check whether there are any empty files in the current directory:

_$ (vl-every
'(lambda (fnm) (> (vl-file-size
fnm) 0))
   (vl-directory-files
nil nil 1) )
T

Check whether the list of numbers in NLST is ordered by '<=:

_$ (setq nlst (list 0 2 pi
pi 4))
(0 2 3.14159 3.14159 4)
_$ (vl-every '<= nlst
(cdr nlst))
T

Compare the results of the following expressions:

_$ (vl-every '= '(1 2) '(1
3))
nil
_$ (vl-every '= '(1 2) '(1
2 3))
T

The first expression returned nil because vl-every compared the second element in each list and they were not numerically equal. The second expression returned T because vl-every stopped comparing elements after it had processed all the elements in the shorter list (1 2), at which point the lists were numerically equal. If the end of a list is reached, vl-every returns a non-nil value.

The following example demonstrates the result when vl-every evaluates one list that contains integer elements and another list that is nil:

_$ (setq alist (list 1 2
3 4))
(1 2 3 4)
_$ (setq junk nil)
nil
_$ (vl-every '= junk alist)
T

The return value is T because vl-every responds to the nil list as if it has reached the end of the list (even though the predicate hasn't yet been applied to any elements). And since the end of a list has been reached, vl-every returns a non-nil value.


V Functions
vector_image
ver
vl-acad-defun
vl-acad-undefun
vl-arx-import
vl-bb-ref
vl-bb-set
vl-catch-all-apply
vl-catch-all-error-message
vl-catch-all-error-p
vl-cmdf
vl-consp
vl-directory-files
vl-doc-export
vl-doc-import
vl-doc-ref
vl-doc-set
vl-every
vl-exit-with-error
vl-exit-with-value
vl-file-copy
vl-file-delete
vl-file-directory-p
vl-file-rename
vl-file-size
vl-file-systime
vl-filename-base
vl-filename-directory
vl-filename-extension
vl-filename-mktemp
vl-get-resource
vl-list*
vl-list->string
vl-list-exported-functions
vl-list-length
vl-list-loaded-vlx
vl-load-all
vl-load-com
vl-load-reactors
vl-mkdir
vl-member-if
vl-member-if-not
vl-position
vl-prin1-to-string
vl-princ-to-string
vl-propagate
vl-registry-delete
vl-registry-descendents
vl-registry-read
vl-registry-write
vl-remove
vl-remove-if
vl-remove-if-not
vl-some
vl-sort
vl-sort-i
vl-string->list
vl-string-elt
vl-string-left-trim
vl-string-mismatch
vl-string-position
vl-string-right-trim
vl-string-search
vl-string-subst
vl-string-translate
vl-string-trim
vl-symbol-name
vl-symbol-value
vl-symbolp
vl-unload-vlx
vl-vbaload
vl-vbarun
vl-vlx-loaded-p
vlax-3D-point
vlax-add-cmd
vlax-create-object
vlax-curve-getArea
vlax-curve-getClosestPointTo
vlax-curve-getClosestPointToProjection
vlax-curve-getDistAtParam
vlax-curve-getDistAtPoint
vlax-curve-getEndParam
vlax-curve-getEndPoint
vlax-curve-getFirstDeriv
vlax-curve-getParamAtDist
vlax-curve-getParamAtPoint
vlax-curve-getPointAtDist
vlax-curve-getPointAtParam
vlax-curve-getSecondDeriv
vlax-curve-getStartParam
vlax-curve-getStartPoint
vlax-curve-isClosed
vlax-curve-isPeriodic
vlax-curve-isPlanar
vlax-dump-object
vlax-ename->vla-object
vlax-erased-p
vlax-for
vlax-get-acad-object
vlax-get-object
vlax-get-or-create-object
vlax-get-property
vlax-import-type-library
vlax-invoke-method
vlax-ldata-delete
vlax-ldata-get
vlax-ldata-list
vlax-ldata-put
vlax-ldata-test
vlax-make-safearray
vlax-make-variant
vlax-map-collection
vlax-method-applicable-p
vlax-object-released-p
vlax-product-key
vlax-property-available-p
vlax-put-property
vlax-read-enabled-p
vlax-release-object
vlax-remove-cmd
vlax-safearray-fill
vlax-safearray-get-dim
vlax-safearray-get-element
vlax-safearray-get-l-bound
vlax-safearray-get-u-bound
vlax-safearray-put-element
vlax-safearray-type
vlax-safearray->list
vlax-tmatrix
vlax-typeinfo-available-p
vlax-variant-change-type
vlax-variant-type
vlax-variant-value
vlax-vla-object->ename
vlax-write-enabled-p
vlisp-compile
vlr-acdb-reactor
vlr-add
vlr-added-p
vlr-beep-reaction
vlr-command-reactor
vlr-current-reaction-name
vlr-data
vlr-data-set
vlr-deepclone-reactor
vlr-docmanager-reactor
vlr-dwg-reactor
vlr-dxf-reactor
vlr-editor-reactor
vlr-insert-reactor
vlr-linker-reactor
vlr-lisp-reactor
vlr-miscellaneous-reactor
vlr-mouse-reactor
vlr-notification
vlr-object-reactor
vlr-owner-add
vlr-owner-remove
vlr-owners
vlr-pers
vlr-pers-list
vlr-pers-p
vlr-pers-release
vlr-reaction-name
vlr-reaction-set
vlr-reactions
vlr-reactors
vlr-remove
vlr-remove-all
vlr-set-notification
vlr-sysvar-reactor
vlr-toolbar-reactor
vlr-trace-reaction
vlr-type
vlr-types
vlr-undo-reactor
vlr-wblock-reactor
vlr-window-reactor
vlr-xref-reactor
vports