file1 file2 --------------------------------------- x x / x x /dset x x /g1 group : and 0 differences found Attributes status: 30 common, 0 only in obj1, 0 only in obj2 attribute: > and > size: [2] [2] position VLstring of VLstring of difference ------------------------------------------------------------ [ 0 ] a z [ 0 ] b z [ 1 ] d z [ 1 ] e z 4 differences found attribute: > and > size: [3x2] [3x2] position VLstring2D of VLstring2D of difference ------------------------------------------------------------ [ 0 0 ] a z [ 0 0 ] b z [ 0 1 ] c z [ 0 1 ] d z [ 1 0 ] e z [ 1 0 ] f z [ 1 1 ] g z [ 1 1 ] h z [ 2 0 ] i z [ 2 0 ] j z [ 2 1 ] k z [ 2 1 ] l z 12 differences found attribute: > and > size: [4x3x2] [4x3x2] position VLstring3D of VLstring3D of difference ------------------------------------------------------------ [ 0 0 0 ] a z [ 0 0 0 ] b z [ 0 0 1 ] c z [ 0 0 1 ] d z [ 0 1 0 ] e z [ 0 1 0 ] f z [ 0 1 1 ] g z [ 0 1 1 ] h z [ 0 2 0 ] i z [ 0 2 0 ] j z [ 0 2 1 ] k z [ 0 2 1 ] l z [ 1 0 0 ] m z [ 1 0 0 ] n z [ 1 0 1 ] p z [ 1 0 1 ] q z [ 1 1 0 ] r z [ 1 1 0 ] s z [ 1 1 1 ] t z [ 1 1 1 ] u z [ 1 2 0 ] v z [ 1 2 0 ] w z [ 1 2 1 ] x z [ 2 0 0 ] A z [ 2 0 0 ] B z [ 2 0 1 ] C z [ 2 0 1 ] D z [ 2 1 0 ] E z [ 2 1 0 ] F z [ 2 1 1 ] G z [ 2 1 1 ] H z [ 2 2 0 ] I z [ 2 2 0 ] J z [ 2 2 1 ] K z [ 2 2 1 ] L z [ 3 0 0 ] M z [ 3 0 0 ] N z [ 3 0 1 ] P z [ 3 0 1 ] Q z [ 3 1 0 ] R z [ 3 1 0 ] S z [ 3 1 1 ] T z [ 3 1 1 ] U z [ 3 2 0 ] V z [ 3 2 0 ] W z [ 3 2 1 ] X z [ 3 2 1 ] Z z 47 differences found attribute: > and > size: [2] [2] position array of array of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 0 ] 2 0 2 [ 0 ] 3 0 3 [ 1 ] 4 0 4 [ 1 ] 5 0 5 [ 1 ] 6 0 6 6 differences found attribute: > and > size: [3x2] [3x2] position array2D of array2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 0 ] 2 0 2 [ 0 0 ] 3 0 3 [ 0 1 ] 4 0 4 [ 0 1 ] 5 0 5 [ 0 1 ] 6 0 6 [ 1 0 ] 7 0 7 [ 1 0 ] 8 0 8 [ 1 0 ] 9 0 9 [ 1 1 ] 10 0 10 [ 1 1 ] 11 0 11 [ 1 1 ] 12 0 12 [ 2 0 ] 13 0 13 [ 2 0 ] 14 0 14 [ 2 0 ] 15 0 15 [ 2 1 ] 16 0 16 [ 2 1 ] 17 0 17 [ 2 1 ] 18 0 18 18 differences found attribute: > and > size: [4x3x2] [4x3x2] position array3D of array3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 0 ] 2 0 2 [ 0 0 0 ] 3 0 3 [ 0 0 1 ] 4 0 4 [ 0 0 1 ] 5 0 5 [ 0 0 1 ] 6 0 6 [ 0 1 0 ] 7 0 7 [ 0 1 0 ] 8 0 8 [ 0 1 0 ] 9 0 9 [ 0 1 1 ] 10 0 10 [ 0 1 1 ] 11 0 11 [ 0 1 1 ] 12 0 12 [ 0 2 0 ] 13 0 13 [ 0 2 0 ] 14 0 14 [ 0 2 0 ] 15 0 15 [ 0 2 1 ] 16 0 16 [ 0 2 1 ] 17 0 17 [ 0 2 1 ] 18 0 18 [ 1 0 0 ] 19 0 19 [ 1 0 0 ] 20 0 20 [ 1 0 0 ] 21 0 21 [ 1 0 1 ] 22 0 22 [ 1 0 1 ] 23 0 23 [ 1 0 1 ] 24 0 24 [ 1 1 0 ] 25 0 25 [ 1 1 0 ] 26 0 26 [ 1 1 0 ] 27 0 27 [ 1 1 1 ] 28 0 28 [ 1 1 1 ] 29 0 29 [ 1 1 1 ] 30 0 30 [ 1 2 0 ] 31 0 31 [ 1 2 0 ] 32 0 32 [ 1 2 0 ] 33 0 33 [ 1 2 1 ] 34 0 34 [ 1 2 1 ] 35 0 35 [ 1 2 1 ] 36 0 36 [ 2 0 0 ] 37 0 37 [ 2 0 0 ] 38 0 38 [ 2 0 0 ] 39 0 39 [ 2 0 1 ] 40 0 40 [ 2 0 1 ] 41 0 41 [ 2 0 1 ] 42 0 42 [ 2 1 0 ] 43 0 43 [ 2 1 0 ] 44 0 44 [ 2 1 0 ] 45 0 45 [ 2 1 1 ] 46 0 46 [ 2 1 1 ] 47 0 47 [ 2 1 1 ] 48 0 48 [ 2 2 0 ] 49 0 49 [ 2 2 0 ] 50 0 50 [ 2 2 0 ] 51 0 51 [ 2 2 1 ] 52 0 52 [ 2 2 1 ] 53 0 53 [ 2 2 1 ] 54 0 54 [ 3 0 0 ] 55 0 55 [ 3 0 0 ] 56 0 56 [ 3 0 0 ] 57 0 57 [ 3 0 1 ] 58 0 58 [ 3 0 1 ] 59 0 59 [ 3 0 1 ] 60 0 60 [ 3 1 0 ] 61 0 61 [ 3 1 0 ] 62 0 62 [ 3 1 0 ] 63 0 63 [ 3 1 1 ] 64 0 64 [ 3 1 1 ] 65 0 65 [ 3 1 1 ] 66 0 66 [ 3 2 0 ] 67 0 67 [ 3 2 0 ] 68 0 68 [ 3 2 0 ] 69 0 69 [ 3 2 1 ] 70 0 70 [ 3 2 1 ] 71 0 71 [ 3 2 1 ] 72 0 72 72 differences found attribute: > and > size: [2] [2] position bitfield of bitfield of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 1 ] 2 0 2 2 differences found attribute: > and > size: [3x2] [3x2] position bitfield2D of bitfield2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 1 ] 2 0 2 [ 1 0 ] 3 0 3 [ 1 1 ] 4 0 4 [ 2 0 ] 5 0 5 [ 2 1 ] 6 0 6 6 differences found attribute: > and > size: [4x3x2] [4x3x2] position bitfield3D of bitfield3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 1 ] 2 0 2 [ 0 1 0 ] 3 0 3 [ 0 1 1 ] 4 0 4 [ 0 2 0 ] 5 0 5 [ 0 2 1 ] 6 0 6 [ 1 0 0 ] 7 0 7 [ 1 0 1 ] 8 0 8 [ 1 1 0 ] 9 0 9 [ 1 1 1 ] 10 0 10 [ 1 2 0 ] 11 0 11 [ 1 2 1 ] 12 0 12 [ 2 0 0 ] 13 0 13 [ 2 0 1 ] 14 0 14 [ 2 1 0 ] 15 0 15 [ 2 1 1 ] 16 0 16 [ 2 2 0 ] 17 0 17 [ 2 2 1 ] 18 0 18 [ 3 0 0 ] 19 0 19 [ 3 0 1 ] 20 0 20 [ 3 1 0 ] 21 0 21 [ 3 1 1 ] 22 0 22 [ 3 2 0 ] 23 0 23 [ 3 2 1 ] 24 0 24 24 differences found attribute: > and > size: [2] [2] position compound of compound of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 0 ] 2 0 2 [ 1 ] 3 0 3 [ 1 ] 4 0 4 4 differences found attribute: > and > size: [3x2] [3x2] position compound2D of compound2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 0 ] 2 0 2 [ 0 1 ] 3 0 3 [ 0 1 ] 4 0 4 [ 1 0 ] 5 0 5 [ 1 0 ] 6 0 6 [ 1 1 ] 7 0 7 [ 1 1 ] 8 0 8 [ 2 0 ] 9 0 9 [ 2 0 ] 10 0 10 [ 2 1 ] 11 0 11 [ 2 1 ] 12 0 12 12 differences found attribute: > and > size: [4x3x2] [4x3x2] position compound3D of compound3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 0 ] 2 0 2 [ 0 0 1 ] 3 0 3 [ 0 0 1 ] 4 0 4 [ 0 1 0 ] 5 0 5 [ 0 1 0 ] 6 0 6 [ 0 1 1 ] 7 0 7 [ 0 1 1 ] 8 0 8 [ 0 2 0 ] 9 0 9 [ 0 2 0 ] 10 0 10 [ 0 2 1 ] 11 0 11 [ 0 2 1 ] 12 0 12 [ 1 0 0 ] 13 0 13 [ 1 0 0 ] 14 0 14 [ 1 0 1 ] 15 0 15 [ 1 0 1 ] 16 0 16 [ 1 1 0 ] 17 0 17 [ 1 1 0 ] 18 0 18 [ 1 1 1 ] 19 0 19 [ 1 1 1 ] 20 0 20 [ 1 2 0 ] 21 0 21 [ 1 2 0 ] 22 0 22 [ 1 2 1 ] 23 0 23 [ 1 2 1 ] 24 0 24 [ 2 0 0 ] 25 0 25 [ 2 0 0 ] 26 0 26 [ 2 0 1 ] 27 0 27 [ 2 0 1 ] 28 0 28 [ 2 1 0 ] 29 0 29 [ 2 1 0 ] 30 0 30 [ 2 1 1 ] 31 0 31 [ 2 1 1 ] 32 0 32 [ 2 2 0 ] 33 0 33 [ 2 2 0 ] 34 0 34 [ 2 2 1 ] 35 0 35 [ 2 2 1 ] 36 0 36 [ 3 0 0 ] 37 0 37 [ 3 0 0 ] 38 0 38 [ 3 0 1 ] 39 0 39 [ 3 0 1 ] 40 0 40 [ 3 1 0 ] 41 0 41 [ 3 1 0 ] 42 0 42 [ 3 1 1 ] 43 0 43 [ 3 1 1 ] 44 0 44 [ 3 2 0 ] 45 0 45 [ 3 2 0 ] 46 0 46 [ 3 2 1 ] 47 0 47 [ 3 2 1 ] 48 0 48 48 differences found attribute: > and > size: [2] [2] position enum of enum of difference ------------------------------------------------------------ [ 0 ] RED GREEN [ 1 ] RED GREEN 2 differences found attribute: > and > size: [3x2] [3x2] position enum2D of enum2D of difference ------------------------------------------------------------ [ 0 0 ] RED GREEN [ 0 1 ] RED GREEN [ 1 0 ] RED GREEN [ 1 1 ] RED GREEN [ 2 0 ] RED GREEN [ 2 1 ] RED GREEN 6 differences found attribute: > and > size: [4x3x2] [4x3x2] position enum3D of enum3D of difference ------------------------------------------------------------ [ 0 0 0 ] GREEN RED [ 0 0 1 ] GREEN RED [ 0 1 0 ] GREEN RED [ 0 1 1 ] GREEN RED [ 0 2 0 ] GREEN RED [ 0 2 1 ] GREEN RED [ 1 0 0 ] GREEN RED [ 1 0 1 ] GREEN RED [ 1 1 0 ] GREEN RED [ 1 1 1 ] GREEN RED [ 1 2 0 ] GREEN RED [ 1 2 1 ] GREEN RED [ 2 0 0 ] GREEN RED [ 2 0 1 ] GREEN RED [ 2 1 0 ] GREEN RED [ 2 1 1 ] GREEN RED [ 2 2 0 ] GREEN RED [ 2 2 1 ] GREEN RED [ 3 0 0 ] GREEN RED [ 3 0 1 ] GREEN RED [ 3 1 0 ] GREEN RED [ 3 1 1 ] GREEN RED [ 3 2 0 ] GREEN RED [ 3 2 1 ] GREEN RED 24 differences found attribute: > and > size: [2] [2] position float of float of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 1 ] 2 0 2 2 differences found attribute: > and > size: [3x2] [3x2] position float2D of float2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 1 ] 2 0 2 [ 1 0 ] 3 0 3 [ 1 1 ] 4 0 4 [ 2 0 ] 5 0 5 [ 2 1 ] 6 0 6 6 differences found attribute: > and > size: [4x3x2] [4x3x2] position float3D of float3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 1 ] 2 0 2 [ 0 1 0 ] 3 0 3 [ 0 1 1 ] 4 0 4 [ 0 2 0 ] 5 0 5 [ 0 2 1 ] 6 0 6 [ 1 0 0 ] 7 0 7 [ 1 0 1 ] 8 0 8 [ 1 1 0 ] 9 0 9 [ 1 1 1 ] 10 0 10 [ 1 2 0 ] 11 0 11 [ 1 2 1 ] 12 0 12 [ 2 0 0 ] 13 0 13 [ 2 0 1 ] 14 0 14 [ 2 1 0 ] 15 0 15 [ 2 1 1 ] 16 0 16 [ 2 2 0 ] 17 0 17 [ 2 2 1 ] 18 0 18 [ 3 0 0 ] 19 0 19 [ 3 0 1 ] 20 0 20 [ 3 1 0 ] 21 0 21 [ 3 1 1 ] 22 0 22 [ 3 2 0 ] 23 0 23 [ 3 2 1 ] 24 0 24 24 differences found attribute: > and > size: [2] [2] position integer of integer of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 1 ] 2 0 2 2 differences found attribute: > and > size: [3x2] [3x2] position integer2D of integer2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 1 ] 2 0 2 [ 1 0 ] 3 0 3 [ 1 1 ] 4 0 4 [ 2 0 ] 5 0 5 [ 2 1 ] 6 0 6 6 differences found attribute: > and > size: [4x3x2] [4x3x2] position integer3D of integer3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 1 ] 2 0 2 [ 0 1 0 ] 3 0 3 [ 0 1 1 ] 4 0 4 [ 0 2 0 ] 5 0 5 [ 0 2 1 ] 6 0 6 [ 1 0 0 ] 7 0 7 [ 1 0 1 ] 8 0 8 [ 1 1 0 ] 9 0 9 [ 1 1 1 ] 10 0 10 [ 1 2 0 ] 11 0 11 [ 1 2 1 ] 12 0 12 [ 2 0 0 ] 13 0 13 [ 2 0 1 ] 14 0 14 [ 2 1 0 ] 15 0 15 [ 2 1 1 ] 16 0 16 [ 2 2 0 ] 17 0 17 [ 2 2 1 ] 18 0 18 [ 3 0 0 ] 19 0 19 [ 3 0 1 ] 20 0 20 [ 3 1 0 ] 21 0 21 [ 3 1 1 ] 22 0 22 [ 3 2 0 ] 23 0 23 [ 3 2 1 ] 24 0 24 24 differences found attribute: > and > size: [2] [2] position opaque of opaque of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 1 ] 2 0 2 2 differences found attribute: > and > size: [3x2] [3x2] position opaque2D of opaque2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 1 ] 2 0 2 [ 1 0 ] 3 0 3 [ 1 1 ] 4 0 4 [ 2 0 ] 5 0 5 [ 2 1 ] 6 0 6 6 differences found attribute: > and > size: [4x3x2] [4x3x2] position opaque3D of opaque3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 1 ] 2 0 2 [ 0 1 0 ] 3 0 3 [ 0 1 1 ] 4 0 4 [ 0 2 0 ] 5 0 5 [ 0 2 1 ] 6 0 6 [ 1 0 0 ] 7 0 7 [ 1 0 1 ] 8 0 8 [ 1 1 0 ] 9 0 9 [ 1 1 1 ] 10 0 10 [ 1 2 0 ] 11 0 11 [ 1 2 1 ] 12 0 12 [ 2 0 0 ] 13 0 13 [ 2 0 1 ] 14 0 14 [ 2 1 0 ] 15 0 15 [ 2 1 1 ] 16 0 16 [ 2 2 0 ] 17 0 17 [ 2 2 1 ] 18 0 18 [ 3 0 0 ] 19 0 19 [ 3 0 1 ] 20 0 20 [ 3 1 0 ] 21 0 21 [ 3 1 1 ] 22 0 22 [ 3 2 0 ] 23 0 23 [ 3 2 1 ] 24 0 24 24 differences found attribute: > and > size: [2] [2] position string of string of difference ------------------------------------------------------------ [ 0 ] a z [ 0 ] b z [ 1 ] d z [ 1 ] e z 4 differences found attribute: > and > size: [3x2] [3x2] position string2D of string2D of difference ------------------------------------------------------------ [ 0 0 ] a z [ 0 0 ] b z [ 0 1 ] c z [ 0 1 ] d z [ 1 0 ] e z [ 1 0 ] f z [ 1 1 ] g z [ 1 1 ] h z [ 2 0 ] i z [ 2 0 ] j z [ 2 1 ] k z [ 2 1 ] l z 12 differences found attribute: > and > size: [4x3x2] [4x3x2] position string3D of string3D of difference ------------------------------------------------------------ [ 0 0 0 ] a z [ 0 0 0 ] b z [ 0 0 1 ] c z [ 0 0 1 ] d z [ 0 1 0 ] e z [ 0 1 0 ] f z [ 0 1 1 ] g z [ 0 1 1 ] h z [ 0 2 0 ] i z [ 0 2 0 ] j z [ 0 2 1 ] k z [ 0 2 1 ] l z [ 1 0 0 ] m z [ 1 0 0 ] n z [ 1 0 1 ] p z [ 1 0 1 ] q z [ 1 1 0 ] r z [ 1 1 0 ] s z [ 1 1 1 ] t z [ 1 1 1 ] u z [ 1 2 0 ] v z [ 1 2 0 ] w z [ 1 2 1 ] x z [ 2 0 0 ] A z [ 2 0 0 ] B z [ 2 0 1 ] C z [ 2 0 1 ] D z [ 2 1 0 ] E z [ 2 1 0 ] F z [ 2 1 1 ] G z [ 2 1 1 ] H z [ 2 2 0 ] I z [ 2 2 0 ] J z [ 2 2 1 ] K z [ 2 2 1 ] L z [ 3 0 0 ] M z [ 3 0 0 ] N z [ 3 0 1 ] P z [ 3 0 1 ] Q z [ 3 1 0 ] R z [ 3 1 0 ] S z [ 3 1 1 ] T z [ 3 1 1 ] U z [ 3 2 0 ] V z [ 3 2 0 ] W z [ 3 2 1 ] X z [ 3 2 1 ] Z z 47 differences found attribute: > and > size: [2] [2] position vlen of vlen of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 1 ] 2 0 2 [ 1 ] 3 0 3 3 differences found attribute: > and > size: [3x2] [3x2] position vlen2D of vlen2D of difference ------------------------------------------------------------ [ 0 1 ] 1 0 1 [ 1 0 ] 2 0 2 [ 1 0 ] 3 0 3 [ 1 1 ] 4 0 4 [ 1 1 ] 5 0 5 [ 2 0 ] 6 0 6 [ 2 0 ] 7 0 7 [ 2 0 ] 8 0 8 [ 2 1 ] 9 0 9 [ 2 1 ] 10 0 10 [ 2 1 ] 11 0 11 11 differences found attribute: > and > size: [4x3x2] [4x3x2] position vlen3D of vlen3D of difference ------------------------------------------------------------ [ 0 0 1 ] 1 0 1 [ 0 1 0 ] 2 0 2 [ 0 1 1 ] 3 0 3 [ 0 2 0 ] 4 0 4 [ 0 2 1 ] 5 0 5 [ 1 0 0 ] 6 0 6 [ 1 0 0 ] 7 0 7 [ 1 0 1 ] 8 0 8 [ 1 0 1 ] 9 0 9 [ 1 1 0 ] 10 0 10 [ 1 1 0 ] 11 0 11 [ 1 1 1 ] 12 0 12 [ 1 1 1 ] 13 0 13 [ 1 2 0 ] 14 0 14 [ 1 2 0 ] 15 0 15 [ 1 2 1 ] 16 0 16 [ 1 2 1 ] 17 0 17 [ 2 0 0 ] 18 0 18 [ 2 0 0 ] 19 0 19 [ 2 0 0 ] 20 0 20 [ 2 0 1 ] 21 0 21 [ 2 0 1 ] 22 0 22 [ 2 0 1 ] 23 0 23 [ 2 1 0 ] 24 0 24 [ 2 1 0 ] 25 0 25 [ 2 1 0 ] 26 0 26 [ 2 1 1 ] 27 0 27 [ 2 1 1 ] 28 0 28 [ 2 1 1 ] 29 0 29 [ 2 2 0 ] 30 0 30 [ 2 2 0 ] 31 0 31 [ 2 2 0 ] 32 0 32 [ 2 2 1 ] 33 0 33 [ 2 2 1 ] 34 0 34 [ 2 2 1 ] 35 0 35 [ 3 0 0 ] 36 0 36 [ 3 0 0 ] 37 0 37 [ 3 0 0 ] 38 0 38 [ 3 0 0 ] 39 0 39 [ 3 0 1 ] 40 0 40 [ 3 0 1 ] 41 0 41 [ 3 0 1 ] 42 0 42 [ 3 0 1 ] 43 0 43 [ 3 1 0 ] 44 0 44 [ 3 1 0 ] 45 0 45 [ 3 1 0 ] 46 0 46 [ 3 1 0 ] 47 0 47 [ 3 1 1 ] 48 0 48 [ 3 1 1 ] 49 0 49 [ 3 1 1 ] 50 0 50 [ 3 1 1 ] 51 0 51 [ 3 2 0 ] 52 0 52 [ 3 2 0 ] 53 0 53 [ 3 2 0 ] 54 0 54 [ 3 2 0 ] 55 0 55 [ 3 2 1 ] 56 0 56 [ 3 2 1 ] 57 0 57 [ 3 2 1 ] 58 0 58 [ 3 2 1 ] 59 0 59 59 differences found dataset: and Not comparable: or is an empty dataset Attributes status: 33 common, 0 only in obj1, 0 only in obj2 attribute: > and > size: [2] [2] position VLstring of VLstring of difference ------------------------------------------------------------ [ 0 ] a z [ 0 ] b z [ 1 ] d z [ 1 ] e z 4 differences found attribute: > and > size: [3x2] [3x2] position VLstring2D of VLstring2D of difference ------------------------------------------------------------ [ 0 0 ] a z [ 0 0 ] b z [ 0 1 ] c z [ 0 1 ] d z [ 1 0 ] e z [ 1 0 ] f z [ 1 1 ] g z [ 1 1 ] h z [ 2 0 ] i z [ 2 0 ] j z [ 2 1 ] k z [ 2 1 ] l z 12 differences found attribute: > and > size: [4x3x2] [4x3x2] position VLstring3D of VLstring3D of difference ------------------------------------------------------------ [ 0 0 0 ] a z [ 0 0 0 ] b z [ 0 0 1 ] c z [ 0 0 1 ] d z [ 0 1 0 ] e z [ 0 1 0 ] f z [ 0 1 1 ] g z [ 0 1 1 ] h z [ 0 2 0 ] i z [ 0 2 0 ] j z [ 0 2 1 ] k z [ 0 2 1 ] l z [ 1 0 0 ] m z [ 1 0 0 ] n z [ 1 0 1 ] p z [ 1 0 1 ] q z [ 1 1 0 ] r z [ 1 1 0 ] s z [ 1 1 1 ] t z [ 1 1 1 ] u z [ 1 2 0 ] v z [ 1 2 0 ] w z [ 1 2 1 ] x z [ 2 0 0 ] A z [ 2 0 0 ] B z [ 2 0 1 ] C z [ 2 0 1 ] D z [ 2 1 0 ] E z [ 2 1 0 ] F z [ 2 1 1 ] G z [ 2 1 1 ] H z [ 2 2 0 ] I z [ 2 2 0 ] J z [ 2 2 1 ] K z [ 2 2 1 ] L z [ 3 0 0 ] M z [ 3 0 0 ] N z [ 3 0 1 ] P z [ 3 0 1 ] Q z [ 3 1 0 ] R z [ 3 1 0 ] S z [ 3 1 1 ] T z [ 3 1 1 ] U z [ 3 2 0 ] V z [ 3 2 0 ] W z [ 3 2 1 ] X z [ 3 2 1 ] Z z 47 differences found attribute: > and > size: [2] [2] position array of array of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 0 ] 2 0 2 [ 0 ] 3 0 3 [ 1 ] 4 0 4 [ 1 ] 5 0 5 [ 1 ] 6 0 6 6 differences found attribute: > and > size: [3x2] [3x2] position array2D of array2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 0 ] 2 0 2 [ 0 0 ] 3 0 3 [ 0 1 ] 4 0 4 [ 0 1 ] 5 0 5 [ 0 1 ] 6 0 6 [ 1 0 ] 7 0 7 [ 1 0 ] 8 0 8 [ 1 0 ] 9 0 9 [ 1 1 ] 10 0 10 [ 1 1 ] 11 0 11 [ 1 1 ] 12 0 12 [ 2 0 ] 13 0 13 [ 2 0 ] 14 0 14 [ 2 0 ] 15 0 15 [ 2 1 ] 16 0 16 [ 2 1 ] 17 0 17 [ 2 1 ] 18 0 18 18 differences found attribute: > and > size: [4x3x2] [4x3x2] position array3D of array3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 0 ] 2 0 2 [ 0 0 0 ] 3 0 3 [ 0 0 1 ] 4 0 4 [ 0 0 1 ] 5 0 5 [ 0 0 1 ] 6 0 6 [ 0 1 0 ] 7 0 7 [ 0 1 0 ] 8 0 8 [ 0 1 0 ] 9 0 9 [ 0 1 1 ] 10 0 10 [ 0 1 1 ] 11 0 11 [ 0 1 1 ] 12 0 12 [ 0 2 0 ] 13 0 13 [ 0 2 0 ] 14 0 14 [ 0 2 0 ] 15 0 15 [ 0 2 1 ] 16 0 16 [ 0 2 1 ] 17 0 17 [ 0 2 1 ] 18 0 18 [ 1 0 0 ] 19 0 19 [ 1 0 0 ] 20 0 20 [ 1 0 0 ] 21 0 21 [ 1 0 1 ] 22 0 22 [ 1 0 1 ] 23 0 23 [ 1 0 1 ] 24 0 24 [ 1 1 0 ] 25 0 25 [ 1 1 0 ] 26 0 26 [ 1 1 0 ] 27 0 27 [ 1 1 1 ] 28 0 28 [ 1 1 1 ] 29 0 29 [ 1 1 1 ] 30 0 30 [ 1 2 0 ] 31 0 31 [ 1 2 0 ] 32 0 32 [ 1 2 0 ] 33 0 33 [ 1 2 1 ] 34 0 34 [ 1 2 1 ] 35 0 35 [ 1 2 1 ] 36 0 36 [ 2 0 0 ] 37 0 37 [ 2 0 0 ] 38 0 38 [ 2 0 0 ] 39 0 39 [ 2 0 1 ] 40 0 40 [ 2 0 1 ] 41 0 41 [ 2 0 1 ] 42 0 42 [ 2 1 0 ] 43 0 43 [ 2 1 0 ] 44 0 44 [ 2 1 0 ] 45 0 45 [ 2 1 1 ] 46 0 46 [ 2 1 1 ] 47 0 47 [ 2 1 1 ] 48 0 48 [ 2 2 0 ] 49 0 49 [ 2 2 0 ] 50 0 50 [ 2 2 0 ] 51 0 51 [ 2 2 1 ] 52 0 52 [ 2 2 1 ] 53 0 53 [ 2 2 1 ] 54 0 54 [ 3 0 0 ] 55 0 55 [ 3 0 0 ] 56 0 56 [ 3 0 0 ] 57 0 57 [ 3 0 1 ] 58 0 58 [ 3 0 1 ] 59 0 59 [ 3 0 1 ] 60 0 60 [ 3 1 0 ] 61 0 61 [ 3 1 0 ] 62 0 62 [ 3 1 0 ] 63 0 63 [ 3 1 1 ] 64 0 64 [ 3 1 1 ] 65 0 65 [ 3 1 1 ] 66 0 66 [ 3 2 0 ] 67 0 67 [ 3 2 0 ] 68 0 68 [ 3 2 0 ] 69 0 69 [ 3 2 1 ] 70 0 70 [ 3 2 1 ] 71 0 71 [ 3 2 1 ] 72 0 72 72 differences found attribute: > and > size: [2] [2] position bitfield of bitfield of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 1 ] 2 0 2 2 differences found attribute: > and > size: [3x2] [3x2] position bitfield2D of bitfield2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 1 ] 2 0 2 [ 1 0 ] 3 0 3 [ 1 1 ] 4 0 4 [ 2 0 ] 5 0 5 [ 2 1 ] 6 0 6 6 differences found attribute: > and > size: [4x3x2] [4x3x2] position bitfield3D of bitfield3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 1 ] 2 0 2 [ 0 1 0 ] 3 0 3 [ 0 1 1 ] 4 0 4 [ 0 2 0 ] 5 0 5 [ 0 2 1 ] 6 0 6 [ 1 0 0 ] 7 0 7 [ 1 0 1 ] 8 0 8 [ 1 1 0 ] 9 0 9 [ 1 1 1 ] 10 0 10 [ 1 2 0 ] 11 0 11 [ 1 2 1 ] 12 0 12 [ 2 0 0 ] 13 0 13 [ 2 0 1 ] 14 0 14 [ 2 1 0 ] 15 0 15 [ 2 1 1 ] 16 0 16 [ 2 2 0 ] 17 0 17 [ 2 2 1 ] 18 0 18 [ 3 0 0 ] 19 0 19 [ 3 0 1 ] 20 0 20 [ 3 1 0 ] 21 0 21 [ 3 1 1 ] 22 0 22 [ 3 2 0 ] 23 0 23 [ 3 2 1 ] 24 0 24 24 differences found attribute: > and > size: [2] [2] position compound of compound of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 0 ] 2 0 2 [ 1 ] 3 0 3 [ 1 ] 4 0 4 4 differences found attribute: > and > size: [3x2] [3x2] position compound2D of compound2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 0 ] 2 0 2 [ 0 1 ] 3 0 3 [ 0 1 ] 4 0 4 [ 1 0 ] 5 0 5 [ 1 0 ] 6 0 6 [ 1 1 ] 7 0 7 [ 1 1 ] 8 0 8 [ 2 0 ] 9 0 9 [ 2 0 ] 10 0 10 [ 2 1 ] 11 0 11 [ 2 1 ] 12 0 12 12 differences found attribute: > and > size: [4x3x2] [4x3x2] position compound3D of compound3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 0 ] 2 0 2 [ 0 0 1 ] 3 0 3 [ 0 0 1 ] 4 0 4 [ 0 1 0 ] 5 0 5 [ 0 1 0 ] 6 0 6 [ 0 1 1 ] 7 0 7 [ 0 1 1 ] 8 0 8 [ 0 2 0 ] 9 0 9 [ 0 2 0 ] 10 0 10 [ 0 2 1 ] 11 0 11 [ 0 2 1 ] 12 0 12 [ 1 0 0 ] 13 0 13 [ 1 0 0 ] 14 0 14 [ 1 0 1 ] 15 0 15 [ 1 0 1 ] 16 0 16 [ 1 1 0 ] 17 0 17 [ 1 1 0 ] 18 0 18 [ 1 1 1 ] 19 0 19 [ 1 1 1 ] 20 0 20 [ 1 2 0 ] 21 0 21 [ 1 2 0 ] 22 0 22 [ 1 2 1 ] 23 0 23 [ 1 2 1 ] 24 0 24 [ 2 0 0 ] 25 0 25 [ 2 0 0 ] 26 0 26 [ 2 0 1 ] 27 0 27 [ 2 0 1 ] 28 0 28 [ 2 1 0 ] 29 0 29 [ 2 1 0 ] 30 0 30 [ 2 1 1 ] 31 0 31 [ 2 1 1 ] 32 0 32 [ 2 2 0 ] 33 0 33 [ 2 2 0 ] 34 0 34 [ 2 2 1 ] 35 0 35 [ 2 2 1 ] 36 0 36 [ 3 0 0 ] 37 0 37 [ 3 0 0 ] 38 0 38 [ 3 0 1 ] 39 0 39 [ 3 0 1 ] 40 0 40 [ 3 1 0 ] 41 0 41 [ 3 1 0 ] 42 0 42 [ 3 1 1 ] 43 0 43 [ 3 1 1 ] 44 0 44 [ 3 2 0 ] 45 0 45 [ 3 2 0 ] 46 0 46 [ 3 2 1 ] 47 0 47 [ 3 2 1 ] 48 0 48 48 differences found attribute: > and > size: [2] [2] position enum of enum of difference ------------------------------------------------------------ [ 0 ] RED GREEN [ 1 ] RED GREEN 2 differences found attribute: > and > size: [3x2] [3x2] position enum2D of enum2D of difference ------------------------------------------------------------ [ 0 0 ] RED GREEN [ 0 1 ] RED GREEN [ 1 0 ] RED GREEN [ 1 1 ] RED GREEN [ 2 0 ] RED GREEN [ 2 1 ] RED GREEN 6 differences found attribute: > and > size: [4x3x2] [4x3x2] position enum3D of enum3D of difference ------------------------------------------------------------ [ 0 0 0 ] GREEN RED [ 0 0 1 ] GREEN RED [ 0 1 0 ] GREEN RED [ 0 1 1 ] GREEN RED [ 0 2 0 ] GREEN RED [ 0 2 1 ] GREEN RED [ 1 0 0 ] GREEN RED [ 1 0 1 ] GREEN RED [ 1 1 0 ] GREEN RED [ 1 1 1 ] GREEN RED [ 1 2 0 ] GREEN RED [ 1 2 1 ] GREEN RED [ 2 0 0 ] GREEN RED [ 2 0 1 ] GREEN RED [ 2 1 0 ] GREEN RED [ 2 1 1 ] GREEN RED [ 2 2 0 ] GREEN RED [ 2 2 1 ] GREEN RED [ 3 0 0 ] GREEN RED [ 3 0 1 ] GREEN RED [ 3 1 0 ] GREEN RED [ 3 1 1 ] GREEN RED [ 3 2 0 ] GREEN RED [ 3 2 1 ] GREEN RED 24 differences found attribute: > and > size: [2] [2] position float of float of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 1 ] 2 0 2 2 differences found attribute: > and > size: [3x2] [3x2] position float2D of float2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 1 ] 2 0 2 [ 1 0 ] 3 0 3 [ 1 1 ] 4 0 4 [ 2 0 ] 5 0 5 [ 2 1 ] 6 0 6 6 differences found attribute: > and > size: [4x3x2] [4x3x2] position float3D of float3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 1 ] 2 0 2 [ 0 1 0 ] 3 0 3 [ 0 1 1 ] 4 0 4 [ 0 2 0 ] 5 0 5 [ 0 2 1 ] 6 0 6 [ 1 0 0 ] 7 0 7 [ 1 0 1 ] 8 0 8 [ 1 1 0 ] 9 0 9 [ 1 1 1 ] 10 0 10 [ 1 2 0 ] 11 0 11 [ 1 2 1 ] 12 0 12 [ 2 0 0 ] 13 0 13 [ 2 0 1 ] 14 0 14 [ 2 1 0 ] 15 0 15 [ 2 1 1 ] 16 0 16 [ 2 2 0 ] 17 0 17 [ 2 2 1 ] 18 0 18 [ 3 0 0 ] 19 0 19 [ 3 0 1 ] 20 0 20 [ 3 1 0 ] 21 0 21 [ 3 1 1 ] 22 0 22 [ 3 2 0 ] 23 0 23 [ 3 2 1 ] 24 0 24 24 differences found attribute: > and > size: [2] [2] position integer of integer of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 1 ] 2 0 2 2 differences found attribute: > and > size: [3x2] [3x2] position integer2D of integer2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 1 ] 2 0 2 [ 1 0 ] 3 0 3 [ 1 1 ] 4 0 4 [ 2 0 ] 5 0 5 [ 2 1 ] 6 0 6 6 differences found attribute: > and > size: [4x3x2] [4x3x2] position integer3D of integer3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 1 ] 2 0 2 [ 0 1 0 ] 3 0 3 [ 0 1 1 ] 4 0 4 [ 0 2 0 ] 5 0 5 [ 0 2 1 ] 6 0 6 [ 1 0 0 ] 7 0 7 [ 1 0 1 ] 8 0 8 [ 1 1 0 ] 9 0 9 [ 1 1 1 ] 10 0 10 [ 1 2 0 ] 11 0 11 [ 1 2 1 ] 12 0 12 [ 2 0 0 ] 13 0 13 [ 2 0 1 ] 14 0 14 [ 2 1 0 ] 15 0 15 [ 2 1 1 ] 16 0 16 [ 2 2 0 ] 17 0 17 [ 2 2 1 ] 18 0 18 [ 3 0 0 ] 19 0 19 [ 3 0 1 ] 20 0 20 [ 3 1 0 ] 21 0 21 [ 3 1 1 ] 22 0 22 [ 3 2 0 ] 23 0 23 [ 3 2 1 ] 24 0 24 24 differences found attribute: > and > size: [2] [2] position opaque of opaque of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 1 ] 2 0 2 2 differences found attribute: > and > size: [3x2] [3x2] position opaque2D of opaque2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 1 ] 2 0 2 [ 1 0 ] 3 0 3 [ 1 1 ] 4 0 4 [ 2 0 ] 5 0 5 [ 2 1 ] 6 0 6 6 differences found attribute: > and > size: [4x3x2] [4x3x2] position opaque3D of opaque3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 1 ] 2 0 2 [ 0 1 0 ] 3 0 3 [ 0 1 1 ] 4 0 4 [ 0 2 0 ] 5 0 5 [ 0 2 1 ] 6 0 6 [ 1 0 0 ] 7 0 7 [ 1 0 1 ] 8 0 8 [ 1 1 0 ] 9 0 9 [ 1 1 1 ] 10 0 10 [ 1 2 0 ] 11 0 11 [ 1 2 1 ] 12 0 12 [ 2 0 0 ] 13 0 13 [ 2 0 1 ] 14 0 14 [ 2 1 0 ] 15 0 15 [ 2 1 1 ] 16 0 16 [ 2 2 0 ] 17 0 17 [ 2 2 1 ] 18 0 18 [ 3 0 0 ] 19 0 19 [ 3 0 1 ] 20 0 20 [ 3 1 0 ] 21 0 21 [ 3 1 1 ] 22 0 22 [ 3 2 0 ] 23 0 23 [ 3 2 1 ] 24 0 24 24 differences found attribute: > and > 0 differences found attribute: > and > 0 differences found attribute: > and > 0 differences found attribute: > and > size: [2] [2] position string of string of difference ------------------------------------------------------------ [ 0 ] a z [ 0 ] b z [ 1 ] d z [ 1 ] e z 4 differences found attribute: > and > size: [3x2] [3x2] position string2D of string2D of difference ------------------------------------------------------------ [ 0 0 ] a z [ 0 0 ] b z [ 0 1 ] c z [ 0 1 ] d z [ 1 0 ] e z [ 1 0 ] f z [ 1 1 ] g z [ 1 1 ] h z [ 2 0 ] i z [ 2 0 ] j z [ 2 1 ] k z [ 2 1 ] l z 12 differences found attribute: > and > size: [4x3x2] [4x3x2] position string3D of string3D of difference ------------------------------------------------------------ [ 0 0 0 ] a z [ 0 0 0 ] b z [ 0 0 1 ] c z [ 0 0 1 ] d z [ 0 1 0 ] e z [ 0 1 0 ] f z [ 0 1 1 ] g z [ 0 1 1 ] h z [ 0 2 0 ] i z [ 0 2 0 ] j z [ 0 2 1 ] k z [ 0 2 1 ] l z [ 1 0 0 ] m z [ 1 0 0 ] n z [ 1 0 1 ] p z [ 1 0 1 ] q z [ 1 1 0 ] r z [ 1 1 0 ] s z [ 1 1 1 ] t z [ 1 1 1 ] u z [ 1 2 0 ] v z [ 1 2 0 ] w z [ 1 2 1 ] x z [ 2 0 0 ] A z [ 2 0 0 ] B z [ 2 0 1 ] C z [ 2 0 1 ] D z [ 2 1 0 ] E z [ 2 1 0 ] F z [ 2 1 1 ] G z [ 2 1 1 ] H z [ 2 2 0 ] I z [ 2 2 0 ] J z [ 2 2 1 ] K z [ 2 2 1 ] L z [ 3 0 0 ] M z [ 3 0 0 ] N z [ 3 0 1 ] P z [ 3 0 1 ] Q z [ 3 1 0 ] R z [ 3 1 0 ] S z [ 3 1 1 ] T z [ 3 1 1 ] U z [ 3 2 0 ] V z [ 3 2 0 ] W z [ 3 2 1 ] X z [ 3 2 1 ] Z z 47 differences found attribute: > and > size: [2] [2] position vlen of vlen of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 1 ] 2 0 2 [ 1 ] 3 0 3 3 differences found attribute: > and > size: [3x2] [3x2] position vlen2D of vlen2D of difference ------------------------------------------------------------ [ 0 1 ] 1 0 1 [ 1 0 ] 2 0 2 [ 1 0 ] 3 0 3 [ 1 1 ] 4 0 4 [ 1 1 ] 5 0 5 [ 2 0 ] 6 0 6 [ 2 0 ] 7 0 7 [ 2 0 ] 8 0 8 [ 2 1 ] 9 0 9 [ 2 1 ] 10 0 10 [ 2 1 ] 11 0 11 11 differences found attribute: > and > size: [4x3x2] [4x3x2] position vlen3D of vlen3D of difference ------------------------------------------------------------ [ 0 0 1 ] 1 0 1 [ 0 1 0 ] 2 0 2 [ 0 1 1 ] 3 0 3 [ 0 2 0 ] 4 0 4 [ 0 2 1 ] 5 0 5 [ 1 0 0 ] 6 0 6 [ 1 0 0 ] 7 0 7 [ 1 0 1 ] 8 0 8 [ 1 0 1 ] 9 0 9 [ 1 1 0 ] 10 0 10 [ 1 1 0 ] 11 0 11 [ 1 1 1 ] 12 0 12 [ 1 1 1 ] 13 0 13 [ 1 2 0 ] 14 0 14 [ 1 2 0 ] 15 0 15 [ 1 2 1 ] 16 0 16 [ 1 2 1 ] 17 0 17 [ 2 0 0 ] 18 0 18 [ 2 0 0 ] 19 0 19 [ 2 0 0 ] 20 0 20 [ 2 0 1 ] 21 0 21 [ 2 0 1 ] 22 0 22 [ 2 0 1 ] 23 0 23 [ 2 1 0 ] 24 0 24 [ 2 1 0 ] 25 0 25 [ 2 1 0 ] 26 0 26 [ 2 1 1 ] 27 0 27 [ 2 1 1 ] 28 0 28 [ 2 1 1 ] 29 0 29 [ 2 2 0 ] 30 0 30 [ 2 2 0 ] 31 0 31 [ 2 2 0 ] 32 0 32 [ 2 2 1 ] 33 0 33 [ 2 2 1 ] 34 0 34 [ 2 2 1 ] 35 0 35 [ 3 0 0 ] 36 0 36 [ 3 0 0 ] 37 0 37 [ 3 0 0 ] 38 0 38 [ 3 0 0 ] 39 0 39 [ 3 0 1 ] 40 0 40 [ 3 0 1 ] 41 0 41 [ 3 0 1 ] 42 0 42 [ 3 0 1 ] 43 0 43 [ 3 1 0 ] 44 0 44 [ 3 1 0 ] 45 0 45 [ 3 1 0 ] 46 0 46 [ 3 1 0 ] 47 0 47 [ 3 1 1 ] 48 0 48 [ 3 1 1 ] 49 0 49 [ 3 1 1 ] 50 0 50 [ 3 1 1 ] 51 0 51 [ 3 2 0 ] 52 0 52 [ 3 2 0 ] 53 0 53 [ 3 2 0 ] 54 0 54 [ 3 2 0 ] 55 0 55 [ 3 2 1 ] 56 0 56 [ 3 2 1 ] 57 0 57 [ 3 2 1 ] 58 0 58 [ 3 2 1 ] 59 0 59 59 differences found 519 differences found group : and 0 differences found Attributes status: 30 common, 0 only in obj1, 0 only in obj2 attribute: > and > size: [2] [2] position VLstring of VLstring of difference ------------------------------------------------------------ [ 0 ] a z [ 0 ] b z [ 1 ] d z [ 1 ] e z 4 differences found attribute: > and > size: [3x2] [3x2] position VLstring2D of VLstring2D of difference ------------------------------------------------------------ [ 0 0 ] a z [ 0 0 ] b z [ 0 1 ] c z [ 0 1 ] d z [ 1 0 ] e z [ 1 0 ] f z [ 1 1 ] g z [ 1 1 ] h z [ 2 0 ] i z [ 2 0 ] j z [ 2 1 ] k z [ 2 1 ] l z 12 differences found attribute: > and > size: [4x3x2] [4x3x2] position VLstring3D of VLstring3D of difference ------------------------------------------------------------ [ 0 0 0 ] a z [ 0 0 0 ] b z [ 0 0 1 ] c z [ 0 0 1 ] d z [ 0 1 0 ] e z [ 0 1 0 ] f z [ 0 1 1 ] g z [ 0 1 1 ] h z [ 0 2 0 ] i z [ 0 2 0 ] j z [ 0 2 1 ] k z [ 0 2 1 ] l z [ 1 0 0 ] m z [ 1 0 0 ] n z [ 1 0 1 ] p z [ 1 0 1 ] q z [ 1 1 0 ] r z [ 1 1 0 ] s z [ 1 1 1 ] t z [ 1 1 1 ] u z [ 1 2 0 ] v z [ 1 2 0 ] w z [ 1 2 1 ] x z [ 2 0 0 ] A z [ 2 0 0 ] B z [ 2 0 1 ] C z [ 2 0 1 ] D z [ 2 1 0 ] E z [ 2 1 0 ] F z [ 2 1 1 ] G z [ 2 1 1 ] H z [ 2 2 0 ] I z [ 2 2 0 ] J z [ 2 2 1 ] K z [ 2 2 1 ] L z [ 3 0 0 ] M z [ 3 0 0 ] N z [ 3 0 1 ] P z [ 3 0 1 ] Q z [ 3 1 0 ] R z [ 3 1 0 ] S z [ 3 1 1 ] T z [ 3 1 1 ] U z [ 3 2 0 ] V z [ 3 2 0 ] W z [ 3 2 1 ] X z [ 3 2 1 ] Z z 47 differences found attribute: > and > size: [2] [2] position array of array of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 0 ] 2 0 2 [ 0 ] 3 0 3 [ 1 ] 4 0 4 [ 1 ] 5 0 5 [ 1 ] 6 0 6 6 differences found attribute: > and > size: [3x2] [3x2] position array2D of array2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 0 ] 2 0 2 [ 0 0 ] 3 0 3 [ 0 1 ] 4 0 4 [ 0 1 ] 5 0 5 [ 0 1 ] 6 0 6 [ 1 0 ] 7 0 7 [ 1 0 ] 8 0 8 [ 1 0 ] 9 0 9 [ 1 1 ] 10 0 10 [ 1 1 ] 11 0 11 [ 1 1 ] 12 0 12 [ 2 0 ] 13 0 13 [ 2 0 ] 14 0 14 [ 2 0 ] 15 0 15 [ 2 1 ] 16 0 16 [ 2 1 ] 17 0 17 [ 2 1 ] 18 0 18 18 differences found attribute: > and > size: [4x3x2] [4x3x2] position array3D of array3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 0 ] 2 0 2 [ 0 0 0 ] 3 0 3 [ 0 0 1 ] 4 0 4 [ 0 0 1 ] 5 0 5 [ 0 0 1 ] 6 0 6 [ 0 1 0 ] 7 0 7 [ 0 1 0 ] 8 0 8 [ 0 1 0 ] 9 0 9 [ 0 1 1 ] 10 0 10 [ 0 1 1 ] 11 0 11 [ 0 1 1 ] 12 0 12 [ 0 2 0 ] 13 0 13 [ 0 2 0 ] 14 0 14 [ 0 2 0 ] 15 0 15 [ 0 2 1 ] 16 0 16 [ 0 2 1 ] 17 0 17 [ 0 2 1 ] 18 0 18 [ 1 0 0 ] 19 0 19 [ 1 0 0 ] 20 0 20 [ 1 0 0 ] 21 0 21 [ 1 0 1 ] 22 0 22 [ 1 0 1 ] 23 0 23 [ 1 0 1 ] 24 0 24 [ 1 1 0 ] 25 0 25 [ 1 1 0 ] 26 0 26 [ 1 1 0 ] 27 0 27 [ 1 1 1 ] 28 0 28 [ 1 1 1 ] 29 0 29 [ 1 1 1 ] 30 0 30 [ 1 2 0 ] 31 0 31 [ 1 2 0 ] 32 0 32 [ 1 2 0 ] 33 0 33 [ 1 2 1 ] 34 0 34 [ 1 2 1 ] 35 0 35 [ 1 2 1 ] 36 0 36 [ 2 0 0 ] 37 0 37 [ 2 0 0 ] 38 0 38 [ 2 0 0 ] 39 0 39 [ 2 0 1 ] 40 0 40 [ 2 0 1 ] 41 0 41 [ 2 0 1 ] 42 0 42 [ 2 1 0 ] 43 0 43 [ 2 1 0 ] 44 0 44 [ 2 1 0 ] 45 0 45 [ 2 1 1 ] 46 0 46 [ 2 1 1 ] 47 0 47 [ 2 1 1 ] 48 0 48 [ 2 2 0 ] 49 0 49 [ 2 2 0 ] 50 0 50 [ 2 2 0 ] 51 0 51 [ 2 2 1 ] 52 0 52 [ 2 2 1 ] 53 0 53 [ 2 2 1 ] 54 0 54 [ 3 0 0 ] 55 0 55 [ 3 0 0 ] 56 0 56 [ 3 0 0 ] 57 0 57 [ 3 0 1 ] 58 0 58 [ 3 0 1 ] 59 0 59 [ 3 0 1 ] 60 0 60 [ 3 1 0 ] 61 0 61 [ 3 1 0 ] 62 0 62 [ 3 1 0 ] 63 0 63 [ 3 1 1 ] 64 0 64 [ 3 1 1 ] 65 0 65 [ 3 1 1 ] 66 0 66 [ 3 2 0 ] 67 0 67 [ 3 2 0 ] 68 0 68 [ 3 2 0 ] 69 0 69 [ 3 2 1 ] 70 0 70 [ 3 2 1 ] 71 0 71 [ 3 2 1 ] 72 0 72 72 differences found attribute: > and > size: [2] [2] position bitfield of bitfield of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 1 ] 2 0 2 2 differences found attribute: > and > size: [3x2] [3x2] position bitfield2D of bitfield2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 1 ] 2 0 2 [ 1 0 ] 3 0 3 [ 1 1 ] 4 0 4 [ 2 0 ] 5 0 5 [ 2 1 ] 6 0 6 6 differences found attribute: > and > size: [4x3x2] [4x3x2] position bitfield3D of bitfield3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 1 ] 2 0 2 [ 0 1 0 ] 3 0 3 [ 0 1 1 ] 4 0 4 [ 0 2 0 ] 5 0 5 [ 0 2 1 ] 6 0 6 [ 1 0 0 ] 7 0 7 [ 1 0 1 ] 8 0 8 [ 1 1 0 ] 9 0 9 [ 1 1 1 ] 10 0 10 [ 1 2 0 ] 11 0 11 [ 1 2 1 ] 12 0 12 [ 2 0 0 ] 13 0 13 [ 2 0 1 ] 14 0 14 [ 2 1 0 ] 15 0 15 [ 2 1 1 ] 16 0 16 [ 2 2 0 ] 17 0 17 [ 2 2 1 ] 18 0 18 [ 3 0 0 ] 19 0 19 [ 3 0 1 ] 20 0 20 [ 3 1 0 ] 21 0 21 [ 3 1 1 ] 22 0 22 [ 3 2 0 ] 23 0 23 [ 3 2 1 ] 24 0 24 24 differences found attribute: > and > size: [2] [2] position compound of compound of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 0 ] 2 0 2 [ 1 ] 3 0 3 [ 1 ] 4 0 4 4 differences found attribute: > and > size: [3x2] [3x2] position compound2D of compound2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 0 ] 2 0 2 [ 0 1 ] 3 0 3 [ 0 1 ] 4 0 4 [ 1 0 ] 5 0 5 [ 1 0 ] 6 0 6 [ 1 1 ] 7 0 7 [ 1 1 ] 8 0 8 [ 2 0 ] 9 0 9 [ 2 0 ] 10 0 10 [ 2 1 ] 11 0 11 [ 2 1 ] 12 0 12 12 differences found attribute: > and > size: [4x3x2] [4x3x2] position compound3D of compound3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 0 ] 2 0 2 [ 0 0 1 ] 3 0 3 [ 0 0 1 ] 4 0 4 [ 0 1 0 ] 5 0 5 [ 0 1 0 ] 6 0 6 [ 0 1 1 ] 7 0 7 [ 0 1 1 ] 8 0 8 [ 0 2 0 ] 9 0 9 [ 0 2 0 ] 10 0 10 [ 0 2 1 ] 11 0 11 [ 0 2 1 ] 12 0 12 [ 1 0 0 ] 13 0 13 [ 1 0 0 ] 14 0 14 [ 1 0 1 ] 15 0 15 [ 1 0 1 ] 16 0 16 [ 1 1 0 ] 17 0 17 [ 1 1 0 ] 18 0 18 [ 1 1 1 ] 19 0 19 [ 1 1 1 ] 20 0 20 [ 1 2 0 ] 21 0 21 [ 1 2 0 ] 22 0 22 [ 1 2 1 ] 23 0 23 [ 1 2 1 ] 24 0 24 [ 2 0 0 ] 25 0 25 [ 2 0 0 ] 26 0 26 [ 2 0 1 ] 27 0 27 [ 2 0 1 ] 28 0 28 [ 2 1 0 ] 29 0 29 [ 2 1 0 ] 30 0 30 [ 2 1 1 ] 31 0 31 [ 2 1 1 ] 32 0 32 [ 2 2 0 ] 33 0 33 [ 2 2 0 ] 34 0 34 [ 2 2 1 ] 35 0 35 [ 2 2 1 ] 36 0 36 [ 3 0 0 ] 37 0 37 [ 3 0 0 ] 38 0 38 [ 3 0 1 ] 39 0 39 [ 3 0 1 ] 40 0 40 [ 3 1 0 ] 41 0 41 [ 3 1 0 ] 42 0 42 [ 3 1 1 ] 43 0 43 [ 3 1 1 ] 44 0 44 [ 3 2 0 ] 45 0 45 [ 3 2 0 ] 46 0 46 [ 3 2 1 ] 47 0 47 [ 3 2 1 ] 48 0 48 48 differences found attribute: > and > size: [2] [2] position enum of enum of difference ------------------------------------------------------------ [ 0 ] RED GREEN [ 1 ] RED GREEN 2 differences found attribute: > and > size: [3x2] [3x2] position enum2D of enum2D of difference ------------------------------------------------------------ [ 0 0 ] RED GREEN [ 0 1 ] RED GREEN [ 1 0 ] RED GREEN [ 1 1 ] RED GREEN [ 2 0 ] RED GREEN [ 2 1 ] RED GREEN 6 differences found attribute: > and > size: [4x3x2] [4x3x2] position enum3D of enum3D of difference ------------------------------------------------------------ [ 0 0 0 ] GREEN RED [ 0 0 1 ] GREEN RED [ 0 1 0 ] GREEN RED [ 0 1 1 ] GREEN RED [ 0 2 0 ] GREEN RED [ 0 2 1 ] GREEN RED [ 1 0 0 ] GREEN RED [ 1 0 1 ] GREEN RED [ 1 1 0 ] GREEN RED [ 1 1 1 ] GREEN RED [ 1 2 0 ] GREEN RED [ 1 2 1 ] GREEN RED [ 2 0 0 ] GREEN RED [ 2 0 1 ] GREEN RED [ 2 1 0 ] GREEN RED [ 2 1 1 ] GREEN RED [ 2 2 0 ] GREEN RED [ 2 2 1 ] GREEN RED [ 3 0 0 ] GREEN RED [ 3 0 1 ] GREEN RED [ 3 1 0 ] GREEN RED [ 3 1 1 ] GREEN RED [ 3 2 0 ] GREEN RED [ 3 2 1 ] GREEN RED 24 differences found attribute: > and > size: [2] [2] position float of float of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 1 ] 2 0 2 2 differences found attribute: > and > size: [3x2] [3x2] position float2D of float2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 1 ] 2 0 2 [ 1 0 ] 3 0 3 [ 1 1 ] 4 0 4 [ 2 0 ] 5 0 5 [ 2 1 ] 6 0 6 6 differences found attribute: > and > size: [4x3x2] [4x3x2] position float3D of float3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 1 ] 2 0 2 [ 0 1 0 ] 3 0 3 [ 0 1 1 ] 4 0 4 [ 0 2 0 ] 5 0 5 [ 0 2 1 ] 6 0 6 [ 1 0 0 ] 7 0 7 [ 1 0 1 ] 8 0 8 [ 1 1 0 ] 9 0 9 [ 1 1 1 ] 10 0 10 [ 1 2 0 ] 11 0 11 [ 1 2 1 ] 12 0 12 [ 2 0 0 ] 13 0 13 [ 2 0 1 ] 14 0 14 [ 2 1 0 ] 15 0 15 [ 2 1 1 ] 16 0 16 [ 2 2 0 ] 17 0 17 [ 2 2 1 ] 18 0 18 [ 3 0 0 ] 19 0 19 [ 3 0 1 ] 20 0 20 [ 3 1 0 ] 21 0 21 [ 3 1 1 ] 22 0 22 [ 3 2 0 ] 23 0 23 [ 3 2 1 ] 24 0 24 24 differences found attribute: > and > size: [2] [2] position integer of integer of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 1 ] 2 0 2 2 differences found attribute: > and > size: [3x2] [3x2] position integer2D of integer2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 1 ] 2 0 2 [ 1 0 ] 3 0 3 [ 1 1 ] 4 0 4 [ 2 0 ] 5 0 5 [ 2 1 ] 6 0 6 6 differences found attribute: > and > size: [4x3x2] [4x3x2] position integer3D of integer3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 1 ] 2 0 2 [ 0 1 0 ] 3 0 3 [ 0 1 1 ] 4 0 4 [ 0 2 0 ] 5 0 5 [ 0 2 1 ] 6 0 6 [ 1 0 0 ] 7 0 7 [ 1 0 1 ] 8 0 8 [ 1 1 0 ] 9 0 9 [ 1 1 1 ] 10 0 10 [ 1 2 0 ] 11 0 11 [ 1 2 1 ] 12 0 12 [ 2 0 0 ] 13 0 13 [ 2 0 1 ] 14 0 14 [ 2 1 0 ] 15 0 15 [ 2 1 1 ] 16 0 16 [ 2 2 0 ] 17 0 17 [ 2 2 1 ] 18 0 18 [ 3 0 0 ] 19 0 19 [ 3 0 1 ] 20 0 20 [ 3 1 0 ] 21 0 21 [ 3 1 1 ] 22 0 22 [ 3 2 0 ] 23 0 23 [ 3 2 1 ] 24 0 24 24 differences found attribute: > and > size: [2] [2] position opaque of opaque of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 1 ] 2 0 2 2 differences found attribute: > and > size: [3x2] [3x2] position opaque2D of opaque2D of difference ------------------------------------------------------------ [ 0 0 ] 1 0 1 [ 0 1 ] 2 0 2 [ 1 0 ] 3 0 3 [ 1 1 ] 4 0 4 [ 2 0 ] 5 0 5 [ 2 1 ] 6 0 6 6 differences found attribute: > and > size: [4x3x2] [4x3x2] position opaque3D of opaque3D of difference ------------------------------------------------------------ [ 0 0 0 ] 1 0 1 [ 0 0 1 ] 2 0 2 [ 0 1 0 ] 3 0 3 [ 0 1 1 ] 4 0 4 [ 0 2 0 ] 5 0 5 [ 0 2 1 ] 6 0 6 [ 1 0 0 ] 7 0 7 [ 1 0 1 ] 8 0 8 [ 1 1 0 ] 9 0 9 [ 1 1 1 ] 10 0 10 [ 1 2 0 ] 11 0 11 [ 1 2 1 ] 12 0 12 [ 2 0 0 ] 13 0 13 [ 2 0 1 ] 14 0 14 [ 2 1 0 ] 15 0 15 [ 2 1 1 ] 16 0 16 [ 2 2 0 ] 17 0 17 [ 2 2 1 ] 18 0 18 [ 3 0 0 ] 19 0 19 [ 3 0 1 ] 20 0 20 [ 3 1 0 ] 21 0 21 [ 3 1 1 ] 22 0 22 [ 3 2 0 ] 23 0 23 [ 3 2 1 ] 24 0 24 24 differences found attribute: > and > size: [2] [2] position string of string of difference ------------------------------------------------------------ [ 0 ] a z [ 0 ] b z [ 1 ] d z [ 1 ] e z 4 differences found attribute: > and > size: [3x2] [3x2] position string2D of string2D of difference ------------------------------------------------------------ [ 0 0 ] a z [ 0 0 ] b z [ 0 1 ] c z [ 0 1 ] d z [ 1 0 ] e z [ 1 0 ] f z [ 1 1 ] g z [ 1 1 ] h z [ 2 0 ] i z [ 2 0 ] j z [ 2 1 ] k z [ 2 1 ] l z 12 differences found attribute: > and > size: [4x3x2] [4x3x2] position string3D of string3D of difference ------------------------------------------------------------ [ 0 0 0 ] a z [ 0 0 0 ] b z [ 0 0 1 ] c z [ 0 0 1 ] d z [ 0 1 0 ] e z [ 0 1 0 ] f z [ 0 1 1 ] g z [ 0 1 1 ] h z [ 0 2 0 ] i z [ 0 2 0 ] j z [ 0 2 1 ] k z [ 0 2 1 ] l z [ 1 0 0 ] m z [ 1 0 0 ] n z [ 1 0 1 ] p z [ 1 0 1 ] q z [ 1 1 0 ] r z [ 1 1 0 ] s z [ 1 1 1 ] t z [ 1 1 1 ] u z [ 1 2 0 ] v z [ 1 2 0 ] w z [ 1 2 1 ] x z [ 2 0 0 ] A z [ 2 0 0 ] B z [ 2 0 1 ] C z [ 2 0 1 ] D z [ 2 1 0 ] E z [ 2 1 0 ] F z [ 2 1 1 ] G z [ 2 1 1 ] H z [ 2 2 0 ] I z [ 2 2 0 ] J z [ 2 2 1 ] K z [ 2 2 1 ] L z [ 3 0 0 ] M z [ 3 0 0 ] N z [ 3 0 1 ] P z [ 3 0 1 ] Q z [ 3 1 0 ] R z [ 3 1 0 ] S z [ 3 1 1 ] T z [ 3 1 1 ] U z [ 3 2 0 ] V z [ 3 2 0 ] W z [ 3 2 1 ] X z [ 3 2 1 ] Z z 47 differences found attribute: > and > size: [2] [2] position vlen of vlen of difference ------------------------------------------------------------ [ 0 ] 1 0 1 [ 1 ] 2 0 2 [ 1 ] 3 0 3 3 differences found attribute: > and > size: [3x2] [3x2] position vlen2D of vlen2D of difference ------------------------------------------------------------ [ 0 1 ] 1 0 1 [ 1 0 ] 2 0 2 [ 1 0 ] 3 0 3 [ 1 1 ] 4 0 4 [ 1 1 ] 5 0 5 [ 2 0 ] 6 0 6 [ 2 0 ] 7 0 7 [ 2 0 ] 8 0 8 [ 2 1 ] 9 0 9 [ 2 1 ] 10 0 10 [ 2 1 ] 11 0 11 11 differences found attribute: > and > size: [4x3x2] [4x3x2] position vlen3D of vlen3D of difference ------------------------------------------------------------ [ 0 0 1 ] 1 0 1 [ 0 1 0 ] 2 0 2 [ 0 1 1 ] 3 0 3 [ 0 2 0 ] 4 0 4 [ 0 2 1 ] 5 0 5 [ 1 0 0 ] 6 0 6 [ 1 0 0 ] 7 0 7 [ 1 0 1 ] 8 0 8 [ 1 0 1 ] 9 0 9 [ 1 1 0 ] 10 0 10 [ 1 1 0 ] 11 0 11 [ 1 1 1 ] 12 0 12 [ 1 1 1 ] 13 0 13 [ 1 2 0 ] 14 0 14 [ 1 2 0 ] 15 0 15 [ 1 2 1 ] 16 0 16 [ 1 2 1 ] 17 0 17 [ 2 0 0 ] 18 0 18 [ 2 0 0 ] 19 0 19 [ 2 0 0 ] 20 0 20 [ 2 0 1 ] 21 0 21 [ 2 0 1 ] 22 0 22 [ 2 0 1 ] 23 0 23 [ 2 1 0 ] 24 0 24 [ 2 1 0 ] 25 0 25 [ 2 1 0 ] 26 0 26 [ 2 1 1 ] 27 0 27 [ 2 1 1 ] 28 0 28 [ 2 1 1 ] 29 0 29 [ 2 2 0 ] 30 0 30 [ 2 2 0 ] 31 0 31 [ 2 2 0 ] 32 0 32 [ 2 2 1 ] 33 0 33 [ 2 2 1 ] 34 0 34 [ 2 2 1 ] 35 0 35 [ 3 0 0 ] 36 0 36 [ 3 0 0 ] 37 0 37 [ 3 0 0 ] 38 0 38 [ 3 0 0 ] 39 0 39 [ 3 0 1 ] 40 0 40 [ 3 0 1 ] 41 0 41 [ 3 0 1 ] 42 0 42 [ 3 0 1 ] 43 0 43 [ 3 1 0 ] 44 0 44 [ 3 1 0 ] 45 0 45 [ 3 1 0 ] 46 0 46 [ 3 1 0 ] 47 0 47 [ 3 1 1 ] 48 0 48 [ 3 1 1 ] 49 0 49 [ 3 1 1 ] 50 0 50 [ 3 1 1 ] 51 0 51 [ 3 2 0 ] 52 0 52 [ 3 2 0 ] 53 0 53 [ 3 2 0 ] 54 0 54 [ 3 2 0 ] 55 0 55 [ 3 2 1 ] 56 0 56 [ 3 2 1 ] 57 0 57 [ 3 2 1 ] 58 0 58 [ 3 2 1 ] 59 0 59 59 differences found -------------------------------- Some objects are not comparable -------------------------------- Use -c for a list of objects without details of differences. EXIT CODE: 1 l opt"><< key << q; } void cmCacheManager::OutputValue(std::ostream& fout, std::string const& value) { // if value has trailing space or tab, enclose it in single quotes if (value.size() && (value[value.size() - 1] == ' ' || value[value.size() - 1] == '\t')) { fout << '\'' << value << '\''; } else { fout << value; } } void cmCacheManager::OutputHelpString(std::ostream& fout, const std::string& helpString) { std::string::size_type end = helpString.size(); if(end == 0) { return; } std::string oneLine; std::string::size_type pos = 0; for (std::string::size_type i=0; i<=end; i++) { if ((i==end) || (helpString[i]=='\n') || ((i-pos >= 60) && (helpString[i]==' '))) { fout << "//"; if (helpString[pos] == '\n') { pos++; fout << "\\n"; } oneLine = helpString.substr(pos, i - pos); fout << oneLine.c_str() << "\n"; pos = i; } } } void cmCacheManager::RemoveCacheEntry(const char* key) { CacheEntryMap::iterator i = this->Cache.find(key); if(i != this->Cache.end()) { this->Cache.erase(i); } } cmCacheManager::CacheEntry *cmCacheManager::GetCacheEntry(const char* key) { CacheEntryMap::iterator i = this->Cache.find(key); if(i != this->Cache.end()) { return &i->second; } return 0; } cmCacheManager::CacheIterator cmCacheManager::GetCacheIterator( const char *key) { return CacheIterator(*this, key); } const char* cmCacheManager::GetCacheValue(const char* key) const { CacheEntryMap::const_iterator i = this->Cache.find(key); if(i != this->Cache.end() && i->second.Initialized) { return i->second.Value.c_str(); } return 0; } void cmCacheManager::PrintCache(std::ostream& out) const { out << "=================================================" << std::endl; out << "CMakeCache Contents:" << std::endl; for(std::map<cmStdString, CacheEntry>::const_iterator i = this->Cache.begin(); i != this->Cache.end(); ++i) { if((*i).second.Type != INTERNAL) { out << (*i).first.c_str() << " = " << (*i).second.Value.c_str() << std::endl; } } out << "\n\n"; out << "To change values in the CMakeCache, " << std::endl << "edit CMakeCache.txt in your output directory.\n"; out << "=================================================" << std::endl; } void cmCacheManager::AddCacheEntry(const char* key, const char* value, const char* helpString, CacheEntryType type) { CacheEntry& e = this->Cache[key]; e.Properties.SetCMakeInstance(this->CMakeInstance); if ( value ) { e.Value = value; e.Initialized = true; } else { e.Value = ""; } e.Type = type; // make sure we only use unix style paths if(type == FILEPATH || type == PATH) { if(e.Value.find(';') != e.Value.npos) { std::vector<std::string> paths; cmSystemTools::ExpandListArgument(e.Value, paths); const char* sep = ""; e.Value = ""; for(std::vector<std::string>::iterator i = paths.begin(); i != paths.end(); ++i) { cmSystemTools::ConvertToUnixSlashes(*i); e.Value += sep; e.Value += *i; sep = ";"; } } else { cmSystemTools::ConvertToUnixSlashes(e.Value); } } e.SetProperty("HELPSTRING", helpString? helpString : "(This variable does not exist and should not be used)"); this->Cache[key] = e; } bool cmCacheManager::CacheIterator::IsAtEnd() const { return this->Position == this->Container.Cache.end(); } void cmCacheManager::CacheIterator::Begin() { this->Position = this->Container.Cache.begin(); } bool cmCacheManager::CacheIterator::Find(const char* key) { this->Position = this->Container.Cache.find(key); return !this->IsAtEnd(); } void cmCacheManager::CacheIterator::Next() { if (!this->IsAtEnd()) { ++this->Position; } } void cmCacheManager::CacheIterator::SetValue(const char* value) { if (this->IsAtEnd()) { return; } CacheEntry* entry = &this->GetEntry(); if ( value ) { entry->Value = value; entry->Initialized = true; } else { entry->Value = ""; } } //---------------------------------------------------------------------------- bool cmCacheManager::CacheIterator::GetValueAsBool() const { return cmSystemTools::IsOn(this->GetEntry().Value.c_str()); } //---------------------------------------------------------------------------- const char* cmCacheManager::CacheEntry::GetProperty(const char* prop) const { if(strcmp(prop, "TYPE") == 0) { return cmCacheManagerTypes[this->Type]; } else if(strcmp(prop, "VALUE") == 0) { return this->Value.c_str(); } bool c = false; return this->Properties.GetPropertyValue(prop, cmProperty::CACHE, c); } //---------------------------------------------------------------------------- void cmCacheManager::CacheEntry::SetProperty(const char* prop, const char* value) { if(strcmp(prop, "TYPE") == 0) { this->Type = cmCacheManager::StringToType(value? value : "STRING"); } else if(strcmp(prop, "VALUE") == 0) { this->Value = value? value : ""; } else { this->Properties.SetProperty(prop, value, cmProperty::CACHE); } } //---------------------------------------------------------------------------- void cmCacheManager::CacheEntry::AppendProperty(const char* prop, const char* value, bool asString) { if(strcmp(prop, "TYPE") == 0) { this->Type = cmCacheManager::StringToType(value? value : "STRING"); } else if(strcmp(prop, "VALUE") == 0) { if(value) { if(!this->Value.empty() && *value && !asString) { this->Value += ";"; } this->Value += value; } } else { this->Properties.AppendProperty(prop, value, cmProperty::CACHE, asString); } } //---------------------------------------------------------------------------- const char* cmCacheManager::CacheIterator::GetProperty(const char* prop) const { if(!this->IsAtEnd()) { return this->GetEntry().GetProperty(prop); } return 0; } //---------------------------------------------------------------------------- void cmCacheManager::CacheIterator::SetProperty(const char* p, const char* v) { if(!this->IsAtEnd()) { this->GetEntry().SetProperty(p, v); } } //---------------------------------------------------------------------------- void cmCacheManager::CacheIterator::AppendProperty(const char* p, const char* v, bool asString) { if(!this->IsAtEnd()) { this->GetEntry().AppendProperty(p, v, asString); } } //---------------------------------------------------------------------------- bool cmCacheManager::CacheIterator::GetPropertyAsBool(const char* prop) const { if(const char* value = this->GetProperty(prop)) { return cmSystemTools::IsOn(value); } return false; } //---------------------------------------------------------------------------- void cmCacheManager::CacheIterator::SetProperty(const char* p, bool v) { this->SetProperty(p, v ? "ON" : "OFF"); } //---------------------------------------------------------------------------- bool cmCacheManager::CacheIterator::PropertyExists(const char* prop) const { return this->GetProperty(prop)? true:false; } //---------------------------------------------------------------------------- bool cmCacheManager::NeedCacheCompatibility(int major, int minor) { // Compatibility is not needed if the cache version is zero because // the cache was created or modified by the user. if(this->CacheMajorVersion == 0) { return false; } // Compatibility is needed if the cache version is equal to or lower // than the given version. unsigned int actual_compat = CMake_VERSION_ENCODE(this->CacheMajorVersion, this->CacheMinorVersion, 0); return (actual_compat && actual_compat <= CMake_VERSION_ENCODE(major, minor, 0)); } //---------------------------------------------------------------------------- void cmCacheManager::DefineProperties(cmake *cm) { cm->DefineProperty ("ADVANCED", cmProperty::CACHE, "True if entry should be hidden by default in GUIs.", "This is a boolean value indicating whether the entry is considered " "interesting only for advanced configuration. " "The mark_as_advanced() command modifies this property." ); cm->DefineProperty ("HELPSTRING", cmProperty::CACHE, "Help associated with entry in GUIs.", "This string summarizes the purpose of an entry to help users set it " "through a CMake GUI." ); cm->DefineProperty ("TYPE", cmProperty::CACHE, "Widget type for entry in GUIs.", "Cache entry values are always strings, but CMake GUIs present widgets " "to help users set values. " "The GUIs use this property as a hint to determine the widget type. " "Valid TYPE values are:\n" " BOOL = Boolean ON/OFF value.\n" " PATH = Path to a directory.\n" " FILEPATH = Path to a file.\n" " STRING = Generic string value.\n" " INTERNAL = Do not present in GUI at all.\n" " STATIC = Value managed by CMake, do not change.\n" " UNINITIALIZED = Type not yet specified.\n" "Generally the TYPE of a cache entry should be set by the command " "which creates it (set, option, find_library, etc.)." ); cm->DefineProperty ("MODIFIED", cmProperty::CACHE, "Internal management property. Do not set or get.", "This is an internal cache entry property managed by CMake to " "track interactive user modification of entries. Ignore it." ); cm->DefineProperty ("STRINGS", cmProperty::CACHE, "Enumerate possible STRING entry values for GUI selection.", "For cache entries with type STRING, this enumerates a set of values. " "CMake GUIs may use this to provide a selection widget instead of a " "generic string entry field. " "This is for convenience only. " "CMake does not enforce that the value matches one of those listed." ); cm->DefineProperty ("VALUE", cmProperty::CACHE, "Value of a cache entry.", "This property maps to the actual value of a cache entry. " "Setting this property always sets the value without checking, so " "use with care." ); }