More dead code removal
authorPeter Geoghegan <[email protected]>
Thu, 13 Mar 2014 09:53:25 +0000 (02:53 -0700)
committerPeter Geoghegan <[email protected]>
Thu, 13 Mar 2014 09:53:25 +0000 (02:53 -0700)
src/backend/utils/adt/jsonb_op.c
src/backend/utils/adt/jsonb_support.c
src/include/utils/jsonb.h

index a9fc4f4925c58401a9de90150e37513b3fa1693c..82671fdccedb30e8f458cb6e3bf4ab4856cd024f 100644 (file)
@@ -364,7 +364,7 @@ deepContains(JsonbIterator ** it1, JsonbIterator ** it2)
            }
            else if (v->type >= jbvNull && v->type < jbvArray)
            {
-               if (!compareJsonbValue(v, &v2))
+               if (!compareJsonbScalarValue(v, &v2))
                {
                    res = false;
                    break;
index 67715a18d0adbf2de1fda9d26aca77da7e2dd66f..0df0ed14721d6061cc34db77a0aff0efbdb96741 100644 (file)
@@ -140,7 +140,7 @@ JsonbValueToJsonb(JsonbValue * v)
 }
 
 /*
- * Are two JsonbValues a and b equal?
+ * Are two scalar JsonbValues a and b equal?
  *
  * Does not use lexical comparisons.  Therefore, it is essentially that this
  * never be used for anything other than searching for values within a single
@@ -150,10 +150,8 @@ JsonbValueToJsonb(JsonbValue * v)
  * this for sorting.  This is just for "contains" style searching.
  */
 bool
-compareJsonbValue(JsonbValue * a, JsonbValue * b)
+compareJsonbScalarValue(JsonbValue * a, JsonbValue * b)
 {
-   int         i;
-
    check_stack_depth();
 
    if (a->type == b->type)
@@ -170,33 +168,6 @@ compareJsonbValue(JsonbValue * a, JsonbValue * b)
                return DatumGetBool(DirectFunctionCall2(numeric_eq,
                                                        PointerGetDatum(a->numeric),
                                                        PointerGetDatum(b->numeric)));
-           case jbvArray:
-               if (a->array.nElems == b->array.nElems)
-               {
-                   for (i = 0; i < a->array.nElems; i++)
-                       if (compareJsonbValue(a->array.elems + i,
-                                             b->array.elems + i))
-                           return true;
-               }
-               break;
-           case jbvObject:
-               if (a->object.nPairs == b->object.nPairs)
-               {
-                   for (i = 0; i < a->object.nPairs; i++)
-                   {
-                       if (lengthCompareJsonbStringValue(&a->object.pairs[i].key,
-                                                         &b->object.pairs[i].key,
-                                                         NULL) == 0)
-                           return true;
-                       if (compareJsonbValue(&a->object.pairs[i].value,
-                                             &b->object.pairs[i].value))
-                           return true;
-                   }
-               }
-               break;
-           case jbvBinary:
-               /* This wastes a few cycles on unneeded lexical comparisons */
-               return compareJsonbSuperHeaderValue(a->binary.data, b->binary.data) == 0;
            default:
                elog(ERROR, "invalid jsonb scalar type");
        }
index 112ef3a3119827f4c4f7b15c5efca6eae067d2b6..85cdd29111ad60f3eedb1df5f1ce4e07a3949578 100644 (file)
@@ -277,7 +277,7 @@ extern Datum gin_consistent_jsonb_hash(PG_FUNCTION_ARGS);
 /* Support functions */
 extern int compareJsonbSuperHeaderValue(JsonbSuperHeader a,
                                         JsonbSuperHeader b);
-extern bool    compareJsonbValue(JsonbValue *a, JsonbValue *b);
+extern bool    compareJsonbScalarValue(JsonbValue *a, JsonbValue *b);
 extern JsonbValue *findJsonbValueFromSuperHeaderLen(JsonbSuperHeader sheader,
                                                    uint32 flags,
                                                    uint32 *lowbound,