general/mini/
is_equal.pro
Function: is_equal Purpose: determines if two inputs are equal like array_equal, but inputs can be structs Will descend structs within structs recursive Requires names of fields within structs to be the same Does not descend pointers to verify targets, if two different pointers have the same destination, it will return false. This may cause some problems, but it also prevents any infinite looping that can occur with pointer objects. (Future versions should fix this) Will not work on objects.It will always return false. (It should be made to) This is designed to be similar to the equal operation in LISP or Scheme. A high level equivalency operator that will test without halting regardless of input type. Does allow ambiguity between 0 element array and one element array Inputs: a,b: can be anything Outputs: 1:yes 0:no Keywords: array_strict: set this if you don't want it to allow conflation of 0 dimensional types and 1 element arrays NOTES: Right now this routine has only been tested to demonstrate its adequacy for use with the mini_language, It should be used with other routines with caution. If it ever reaches general purpose maturity, it will be placed in a different ssl_general directory. TODO: 1. Pointer & Object support needs to be added 2. Also struct tag strictness needs supported $LASTCHANGEDBY: DAVIN-WIN $ $LASTCHANGEDDATE: 2007-10-22 07:26:16 -0700 (MON, 22 OCT 2007) $ $LASTCHANGEDREVISION: 1758 $ $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/trunk/general/mini/is_equal.pro $
Routines
Routines from is_equal.pro
Routine details
File attributes
Modification date: | Thu Feb 13 16:43:50 2014 |
Lines: | 62 |