CrossClj

1.10.0-alpha4 docs

SourceDocs



RECENT
    VARS
    construct-calendar
    construct-date
    construct-timestamp
    days-in-month
    divisible?
    fail
    indivisible?
    leap-year?
    parse-int
    parse-timestamp
    print-calendar
    print-date
    print-timestamp
    read-instant-calendar
    read-instant-date
    read-instant-timestamp
    thread-local-utc-date-format
    thread-local-utc-timestamp-format
    validated
    verify
    zero-fill-right

    « Index of all namespaces of this project

    Private
    (construct-calendar years months days hours minutes seconds nanoseconds offset-sign offset-hours offset-minutes)
    Construct a java.util.Calendar, preserving the timezone
    offset, but truncating the subsecond fraction to milliseconds.
    Private
    (construct-date years months days hours minutes seconds nanoseconds offset-sign offset-hours offset-minutes)
    Construct a java.util.Date, which expresses the original instant as
    milliseconds since the epoch, UTC.
    Private
    (construct-timestamp years months days hours minutes seconds nanoseconds offset-sign offset-hours offset-minutes)
    Construct a java.sql.Timestamp, which has nanosecond precision.
    
    Private
    (divisible? num div)
    macroPrivate
    (fail msg)
    Private
    (indivisible? num div)
    Private
    (leap-year? year)
    Private
    (parse-int s)
    Parse a string containing an RFC3339-like like timestamp.
    
    The function new-instant is called with the following arguments.
    
                    min  max           default
                    ---  ------------  -------
      years          0           9999      N/A (s must provide years)
      months         1             12        1
      days           1             31        1 (actual max days depends
      hours          0             23        0  on month and year)
      minutes        0             59        0
      seconds        0             60        0 (though 60 is only valid
      nanoseconds    0      999999999        0  when minutes is 59)
      offset-sign   -1              1        0
      offset-hours   0             23        0
      offset-minutes 0             59        0
    
    These are all integers and will be non-nil. (The listed defaults
    will be passed if the corresponding field is not present in s.)
    
    Grammar (of s):
    
      date-fullyear   = 4DIGIT
      date-month      = 2DIGIT  ; 01-12
      date-mday       = 2DIGIT  ; 01-28, 01-29, 01-30, 01-31 based on
                                ; month/year
      time-hour       = 2DIGIT  ; 00-23
      time-minute     = 2DIGIT  ; 00-59
      time-second     = 2DIGIT  ; 00-58, 00-59, 00-60 based on leap second
                                ; rules
      time-secfrac    = '.' 1*DIGIT
      time-numoffset  = ('+' / '-') time-hour ':' time-minute
      time-offset     = 'Z' / time-numoffset
    
      time-part       = time-hour [ ':' time-minute [ ':' time-second
                        [time-secfrac] [time-offset] ] ]
    
      timestamp       = date-year [ '-' date-month [ '-' date-mday
                        [ 'T' time-part ] ] ]
    
    Unlike RFC3339:
    
      - we only parse the timestamp format
      - timestamp can elide trailing components
      - time-offset is optional (defaults to +00:00)
    
    Though time-offset is syntactically optional, a missing time-offset
    will be treated as if the time-offset zero (+00:00) had been
    specified.
    Private
    (print-calendar c w)
    Print a java.util.Calendar as RFC3339 timestamp, preserving timezone.
    
    Private
    (print-date d w)
    Print a java.util.Date as RFC3339 timestamp, always in UTC.
    
    Private
    (print-timestamp ts w)
    Print a java.sql.Timestamp as RFC3339 timestamp, always in UTC.
    
    To read an instant as a java.util.Calendar, bind *data-readers* to a map with
    this var as the value for the 'inst key.  Calendar preserves the timezone
    offset.
    To read an instant as a java.util.Date, bind *data-readers* to a map with
    this var as the value for the 'inst key. The timezone offset will be used
    to convert into UTC.
    To read an instant as a java.sql.Timestamp, bind *data-readers* to a
    map with this var as the value for the 'inst key. Timestamp preserves
    fractional seconds with nanosecond precision. The timezone offset will
    be used to convert into UTC.
    (validated new-instance)
    Return a function which constructs an instant by calling constructor
    after first validating that those arguments are in range and otherwise
    plausible. The resulting function will throw an exception if called
    with invalid arguments.
    macroPrivate
    (verify test msg)(verify test)
    Private
    (zero-fill-right s width)