ItemType (TypeHierarchy hierarchy) { if (myValue instanceof FloatValue) { return ((FloatValue)myValue).getItemType(); } if (myValue instanceof Item) { return Type.getItemType((Item)myValue, hierarchy); } return AnyItemType.getInstance(); }