test_class.file: utils/src/test/java/com/cloud/utils/TernaryTest.java
test_class.identifier: TernaryTest
test_case.body: @Test
      public void testEquals() {
          Assert.assertEquals(new Ternary<String, String, String>("a", "b", "c"), new Ternary<String, String, String>("a", "b", "c"));
          Assert.assertFalse(new Ternary<String, String, String>("a", "b", "c").equals(new Ternary<String, String, String>("a", "b", "d")));
          Assert.assertFalse(new Ternary<String, String, String>("a", "b", "c").equals(""));
          Assert.assertFalse(new Ternary<String, String, String>("a", "b", "c").equals(null));
          Assert.assertFalse(new Ternary<String, String, String>("a", "b", "c").equals(new Pair<String, String>("a", "b")));
      }
test_case.class_method_signature: TernaryTest.testEquals()
test_case.full_signature: @Test public void testEquals()
test_case.identifier: testEquals
test_case.invocations: assertEquals assertFalse equals assertFalse equals assertFalse equals assertFalse equals
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testEquals()
focal_class.declarator: t
focal_class.modifier: private
focal_class.original_string: private T t;
focal_class.type: T
focal_class.var_name: t
focal_class.declarator: u
focal_class.modifier: private
focal_class.original_string: private U u;
focal_class.type: U
focal_class.var_name: u
focal_class.declarator: v
focal_class.modifier: private
focal_class.original_string: private V v;
focal_class.type: V
focal_class.var_name: v
focal_class.file: utils/src/main/java/com/cloud/utils/Ternary.java
focal_class.identifier: Ternary
focal_class.class_method_signature: Ternary.Ternary(T t, U u, V v)
focal_class.full_signature: public  Ternary(T t, U u, V v)
focal_class.identifier: Ternary
focal_class.modifiers: public
focal_class.parameters: (T t, U u, V v)
focal_class.signature:  Ternary(T t, U u, V v)
focal_class.class_method_signature: Ternary.first()
focal_class.full_signature: public T first()
focal_class.identifier: first
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: T
focal_class.signature: T first()
focal_class.class_method_signature: Ternary.first(T t)
focal_class.full_signature: public void first(T t)
focal_class.identifier: first
focal_class.modifiers: public
focal_class.parameters: (T t)
focal_class.return: void
focal_class.signature: void first(T t)
focal_class.class_method_signature: Ternary.second()
focal_class.full_signature: public U second()
focal_class.identifier: second
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: U
focal_class.signature: U second()
focal_class.class_method_signature: Ternary.second(U u)
focal_class.full_signature: public void second(U u)
focal_class.identifier: second
focal_class.modifiers: public
focal_class.parameters: (U u)
focal_class.return: void
focal_class.signature: void second(U u)
focal_class.class_method_signature: Ternary.third()
focal_class.full_signature: public V third()
focal_class.identifier: third
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: V
focal_class.signature: V third()
focal_class.class_method_signature: Ternary.third(V v)
focal_class.full_signature: public void third(V v)
focal_class.identifier: third
focal_class.modifiers: public
focal_class.parameters: (V v)
focal_class.return: void
focal_class.signature: void third(V v)
focal_class.class_method_signature: Ternary.hashCode()
focal_class.full_signature: @Override // Note: This means any two pairs with null for both values will match each // other but what can I do? This is due to stupid type erasure. public int hashCode()
focal_class.identifier: hashCode
focal_class.modifiers: @Override // Note: This means any two pairs with null for both values will match each // other but what can I do? This is due to stupid type erasure. public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int hashCode()
focal_class.class_method_signature: Ternary.equals(Object obj)
focal_class.full_signature: @Override public boolean equals(Object obj)
focal_class.identifier: equals
focal_class.modifiers: @Override public
focal_class.parameters: (Object obj)
focal_class.return: boolean
focal_class.signature: boolean equals(Object obj)
focal_class.class_method_signature: Ternary.toString()
focal_class.full_signature: @Override public String toString()
focal_class.identifier: toString
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_method.body: @Override
      public boolean equals(Object obj) {
          if (!(obj instanceof Ternary)) {
              return false;
          }
          Ternary<?, ?, ?> that = (Ternary<?, ?, ?>)obj;
          return (t != null ? t.equals(that.t) : that.t == null) && (u != null ? u.equals(that.u) : that.u == null) && (v != null ? v.equals(that.v) : that.v == null);
      }
focal_method.class_method_signature: Ternary.equals(Object obj)
focal_method.full_signature: @Override public boolean equals(Object obj)
focal_method.identifier: equals
focal_method.invocations: equals equals equals
focal_method.modifiers: @Override public
focal_method.parameters: (Object obj)
focal_method.return: boolean
focal_method.signature: boolean equals(Object obj)