PineForge v0.13.1-379-g9b50973
Deterministic PineScript v6 backtest runtime — C ABI reference
Loading...
Searching...
No Matches
native_calendar.hpp File Reference
#include <cstdint>
#include <optional>
#include <string>
#include <string_view>
#include <utility>
#include <vector>
Include dependency graph for native_calendar.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  pineforge::native_calendar::native_calendar_v2::Timeframe
 
struct  pineforge::native_calendar::native_calendar_v2::TimeframeCompatibility
 
struct  pineforge::native_calendar::native_calendar_v2::TimezoneIdentityDescriptor
 
class  pineforge::native_calendar::native_calendar_v2::SessionWindow
 
class  pineforge::native_calendar::native_calendar_v2::SessionCalendar
 
struct  pineforge::native_calendar::native_calendar_v2::CivilResolution
 
struct  pineforge::native_calendar::native_calendar_v2::NativeInterval
 

Namespaces

namespace  pineforge
 
namespace  pineforge::native_calendar
 
namespace  pineforge::native_calendar::native_calendar_v2
 

Enumerations

enum class  pineforge::native_calendar::native_calendar_v2::TimeframeUnit {
  pineforge::native_calendar::native_calendar_v2::Second ,
  pineforge::native_calendar::native_calendar_v2::Minute ,
  pineforge::native_calendar::native_calendar_v2::Day ,
  pineforge::native_calendar::native_calendar_v2::Week ,
  pineforge::native_calendar::native_calendar_v2::Month
}
 
enum class  pineforge::native_calendar::native_calendar_v2::TimeframePairing {
  pineforge::native_calendar::native_calendar_v2::Passthrough ,
  pineforge::native_calendar::native_calendar_v2::SameUnitMultiple ,
  pineforge::native_calendar::native_calendar_v2::FixedDivisible ,
  pineforge::native_calendar::native_calendar_v2::FixedToCalendar ,
  pineforge::native_calendar::native_calendar_v2::CalendarToCalendar ,
  pineforge::native_calendar::native_calendar_v2::ScriptFiner ,
  pineforge::native_calendar::native_calendar_v2::IndivisibleFixed ,
  pineforge::native_calendar::native_calendar_v2::StreamMonthlyInputRefused ,
  pineforge::native_calendar::native_calendar_v2::Invalid
}
 
enum class  pineforge::native_calendar::native_calendar_v2::TimezoneSourceKind : std::uint32_t {
  pineforge::native_calendar::native_calendar_v2::Utc = 1 ,
  pineforge::native_calendar::native_calendar_v2::FixedOffset = 2 ,
  pineforge::native_calendar::native_calendar_v2::PosixExplicit = 3 ,
  pineforge::native_calendar::native_calendar_v2::PosixDefaultDst = 4 ,
  pineforge::native_calendar::native_calendar_v2::Tzfile = 5
}
 
enum class  pineforge::native_calendar::native_calendar_v2::CivilKind {
  pineforge::native_calendar::native_calendar_v2::Unique ,
  pineforge::native_calendar::native_calendar_v2::Gap ,
  pineforge::native_calendar::native_calendar_v2::Fold
}
 

Functions

bool pineforge::native_calendar::native_calendar_v2::operator== (const Timeframe &a, const Timeframe &b)
 
std::optional< Timeframepineforge::native_calendar::native_calendar_v2::parse_timeframe (std::string_view text)
 
TimeframeCompatibility pineforge::native_calendar::native_calendar_v2::compatibility (const Timeframe &input, const Timeframe &script)
 
TimeframeCompatibility pineforge::native_calendar::native_calendar_v2::stream_compatibility (const Timeframe &input, const Timeframe &script)
 
std::optional< SessionCalendarpineforge::native_calendar::native_calendar_v2::parse_session (std::string_view session, std::string_view timezone)
 
bool pineforge::native_calendar::native_calendar_v2::timezone_accepted (std::string_view timezone)
 
std::optional< TimezoneIdentityDescriptorpineforge::native_calendar::native_calendar_v2::timezone_identity_descriptor (std::string_view timezone)
 
bool pineforge::native_calendar::native_calendar_v2::in_session (const SessionCalendar &calendar, int64_t ms)
 
std::optional< CivilResolutionpineforge::native_calendar::native_calendar_v2::resolve_civil (std::string_view timezone, int year, int month, int day, int hour, int minute, int second=0)
 
std::optional< int64_t > pineforge::native_calendar::native_calendar_v2::session_day_ordinal (const SessionCalendar &calendar, int64_t ms)
 
std::optional< int64_t > pineforge::native_calendar::native_calendar_v2::session_week_ordinal (const SessionCalendar &calendar, int64_t ms)
 
std::optional< int64_t > pineforge::native_calendar::native_calendar_v2::session_month_ordinal (const SessionCalendar &calendar, int64_t ms)
 
std::optional< int64_t > pineforge::native_calendar::native_calendar_v2::period_key (const SessionCalendar &calendar, const Timeframe &tf, int64_t ms)
 
std::optional< NativeIntervalpineforge::native_calendar::native_calendar_v2::interval_containing (const SessionCalendar &calendar, const Timeframe &tf, int64_t ms)
 
std::optional< NativeIntervalpineforge::native_calendar::native_calendar_v2::interval_containing (const SessionCalendar &calendar, const Timeframe &script_tf, const Timeframe &input_tf, int64_t ms)