I would like to convert input.resolution into an integer represented as hours
The function parameter resolution captured from the input() function
Below is the custom function
f_getLookbackNumber(resolution) =>
resolutionHours = iff(resolution == "6H", 360, iff(resolution == "1D", 360*2, iff(resolution == "1W", 360*2*7, iff(resolution == "1M", 360*2*30, resolution))))
resolutionHours
The below error occurs when compiling
line 12: Cannot call 'iff' with arguments (input bool, literal integer, input string); available overloads: iff(bool, bool, bool) => bool; iff(bool, integer, integer) => integer; iff(bool, float, float) => float; iff(bool, color, color) => color; iff(bool, series[float], series[float]) => series[float]; iff(bool, series[integer], series[integer]) => series[integer]; iff(bool, series[color], series[color]) => series[color]; iff(bool, string, string) => string; iff(input bool, input bool, input bool) => input bool; iff(input bool, input integer, input integer) => input integer; iff(input bool, input float, input float) => input float; iff(input bool, input string, input string) => input string; iff(input bool, input color, input color) => input color; iff(const bool, const bool, const bool) => const bool; iff(const bool, const integer, const integer) => const integer; iff(const bool, const float, const float) => const float; iff(const bool, const string, const string) => const string; iff(const bool, const color, const color) => const color; iff(series[bool], bool, bool) => series[bool]; iff(series[bool], integer, integer) => series[integer]; iff(series[bool], float, float) => series[float]; iff(series[bool], color, color) => series[color]; iff(series[bool], series[integer], series[integer]) => series[integer]; iff(series[bool], series[color], series[color]) => series[color]; iff(series[bool], series[bool], series[bool]) => series[bool]; iff(series[bool], series[float], series[float]) => series[float]; iff(series[bool], series[string], series[string]) => series[string]; iff(series[bool], series[line], series[line]) => series[line]; iff(series[bool], series[label], series[label]) => series[label]; iff(series[bool], array[<array_type>], array[<array_type>]) => array[<array_type>];
When I try to replace the last iff, iff(resolution == "1M", 360*2*30, resolution)
with iff(resolution == "1M", 360*2*30, 0)
the code compiles
That seems to suggest data type of resolution is not assignable to resolutionHours
Is there a way to type cast string to integer?