rok commented on a change in pull request #11026:
URL: https://github.com/apache/arrow/pull/11026#discussion_r703044278



##########
File path: cpp/src/arrow/compute/api_scalar.h
##########
@@ -278,6 +278,23 @@ struct ARROW_EXPORT DayOfWeekOptions : public 
FunctionOptions {
   uint32_t week_start;
 };
 
+struct ARROW_EXPORT WeekOptions : public FunctionOptions {
+ public:
+  explicit WeekOptions(bool week_starts_monday = true, bool count_from_zero = 
false,
+                       bool first_week_in_year = false);
+  constexpr static char const kTypeName[] = "WeekOptions";
+  static WeekOptions Defaults() { return WeekOptions{}; }
+
+  /// What day does the week start with (Monday=true, Sunday=false)
+  bool week_starts_monday;
+  /// Dates from current year that fall into last ISO week of the previous 
year return
+  /// 0 if true and 52 or 53 if false.
+  bool count_from_zero;

Review comment:
       > We should look for actual cases. One actual use case is US week 
numbering (like `epiweek` in lubridate). Are there any others?
   
   SQL server seems to support week (week 1 starts with 1st day of week in 
year) and iso_week.
   
   It seems to me we can agree on two parameters already 
(`first_week_is_fully_in_year`, `week_starts_monday`) but maybe not on the 
third: `count_from_zero` (Dates from current year that fall into last ISO week 
of the previous year returns 0 if true and 52 or 53 if false.)?




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to