aboutsummaryrefslogtreecommitdiffhomepage
path: root/Spigot-API-Patches/0002-Add-float-methods-to-configs.patch
blob: af8be23e1efae78f410de369126806975b9b521e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
From 5db35d30b2c5deb83eae1e6b2f9f9e60dba9a31e Mon Sep 17 00:00:00 2001
From: Zach Brown <Zbob750@live.com>
Date: Mon, 19 May 2014 22:51:45 -0500
Subject: [PATCH] Add float methods to configs


diff --git a/src/main/java/org/bukkit/configuration/ConfigurationSection.java b/src/main/java/org/bukkit/configuration/ConfigurationSection.java
index 1bd7fb5..9afc1dc 100644
--- a/src/main/java/org/bukkit/configuration/ConfigurationSection.java
+++ b/src/main/java/org/bukkit/configuration/ConfigurationSection.java
@@ -355,6 +355,48 @@ public interface ConfigurationSection {
      */
     public boolean isDouble(String path);
 
+    // PaperSpigot start - Add getFloat
+    /**
+     * Gets the requested float by path.
+     * <p>
+     * If the float does not exist but a default value has been specified,
+     * this will return the default value. If the float does not exist and no
+     * default value was specified, this will return 0.
+     *
+     * @param path Path of the float to get.
+     * @return Requested float.
+     */
+     public float getFloat(String path);
+
+    /**
+     * Gets the requested float by path, returning a default value if not
+     * found.
+     * <p>
+     * If the float does not exist then the specified default value will
+     * returned regardless of if a default has been identified in the root
+     * {@link Configuration}.
+     *
+     * @param path Path of the float to get.
+     * @param def The default value to return if the path is not found or is
+     *     not a float.
+     * @return Requested float.
+     */
+    public float getFloat(String path, float def);
+
+    /**
+     * Checks if the specified path is a float.
+     * <p>
+     * If the path exists but is not a float, this will return false. If the
+     * path does not exist, this will return false. If the path does not exist
+     * but a default value has been specified, this will check if that default
+     * value is a gloat and return appropriately.
+     *
+     * @param path Path of the float to check.
+     * @return Whether or not the specified path is a float.
+     */
+    public boolean isFloat(String path);
+    // PaperSpigot end
+
     /**
      * Gets the requested long by path.
      * <p>
diff --git a/src/main/java/org/bukkit/configuration/MemorySection.java b/src/main/java/org/bukkit/configuration/MemorySection.java
index f180bf5..0e2b26a 100644
--- a/src/main/java/org/bukkit/configuration/MemorySection.java
+++ b/src/main/java/org/bukkit/configuration/MemorySection.java
@@ -336,6 +336,23 @@ public class MemorySection implements ConfigurationSection {
         return val instanceof Double;
     }
 
+    // PaperSpigot start - Add getFloat
+    public float getFloat(String path) {
+        Object def = getDefault(path);
+        return getFloat(path, (def instanceof Float) ? toFloat(def) : 0);
+    }
+
+    public float getFloat(String path, float def) {
+        Object val = get(path, def);
+        return (val instanceof Float) ? toFloat(val) : def;
+    }
+
+    public boolean isFloat(String path) {
+        Object val = get(path);
+        return val instanceof Float;
+    }
+    // PaperSpigot end
+
     public long getLong(String path) {
         Object def = getDefault(path);
         return getLong(path, (def instanceof Number) ? toLong(def) : 0);
-- 
1.9.1