summaryrefslogtreecommitdiffstats
path: root/vendor/dragonmantank/cron-expression/src/Cron/FieldInterface.php
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/dragonmantank/cron-expression/src/Cron/FieldInterface.php')
-rw-r--r--vendor/dragonmantank/cron-expression/src/Cron/FieldInterface.php41
1 files changed, 41 insertions, 0 deletions
diff --git a/vendor/dragonmantank/cron-expression/src/Cron/FieldInterface.php b/vendor/dragonmantank/cron-expression/src/Cron/FieldInterface.php
new file mode 100644
index 0000000..f8366ea
--- /dev/null
+++ b/vendor/dragonmantank/cron-expression/src/Cron/FieldInterface.php
@@ -0,0 +1,41 @@
+<?php
+
+namespace Cron;
+
+use DateTimeInterface;
+
+/**
+ * CRON field interface
+ */
+interface FieldInterface
+{
+ /**
+ * Check if the respective value of a DateTime field satisfies a CRON exp
+ *
+ * @param DateTimeInterface $date DateTime object to check
+ * @param string $value CRON expression to test against
+ *
+ * @return bool Returns TRUE if satisfied, FALSE otherwise
+ */
+ public function isSatisfiedBy(DateTimeInterface $date, $value);
+
+ /**
+ * When a CRON expression is not satisfied, this method is used to increment
+ * or decrement a DateTime object by the unit of the cron field
+ *
+ * @param DateTimeInterface &$date DateTime object to change
+ * @param bool $invert (optional) Set to TRUE to decrement
+ *
+ * @return FieldInterface
+ */
+ public function increment(DateTimeInterface &$date, $invert = false);
+
+ /**
+ * Validates a CRON expression for a given field
+ *
+ * @param string $value CRON expression value to validate
+ *
+ * @return bool Returns TRUE if valid, FALSE otherwise
+ */
+ public function validate($value);
+}