mirror of
https://github.com/vlang/v.git
synced 2023-08-10 21:13:21 +03:00
time: minor fixes + vfmt
This commit is contained in:
parent
368c2a6bf0
commit
03327e5161
@ -54,11 +54,11 @@ pub fn (t Time) md() string {
|
||||
}
|
||||
|
||||
// clean returns a date string in a following format:
|
||||
// - a date string in "HH:MM" format (24h) for current day
|
||||
// - a date string in "MMM D HH:MM" format (24h) for date of current year
|
||||
// - a date string formatted with format function for other dates
|
||||
// - a date string in "HH:MM" format (24h) for current day
|
||||
// - a date string in "MMM D HH:MM" format (24h) for date of current year
|
||||
// - a date string formatted with format function for other dates
|
||||
pub fn (t Time) clean() string {
|
||||
znow := time.now()
|
||||
znow := now()
|
||||
// Today
|
||||
if t.month == znow.month && t.year == znow.year && t.day == znow.day {
|
||||
return t.get_fmt_time_str(.hhmm24)
|
||||
@ -71,11 +71,11 @@ pub fn (t Time) clean() string {
|
||||
}
|
||||
|
||||
// clean12 returns a date string in a following format:
|
||||
// - a date string in "HH:MM" format (12h) for current day
|
||||
// - a date string in "MMM D HH:MM" format (12h) for date of current year
|
||||
// - a date string formatted with format function for other dates
|
||||
// - a date string in "HH:MM" format (12h) for current day
|
||||
// - a date string in "MMM D HH:MM" format (12h) for date of current year
|
||||
// - a date string formatted with format function for other dates
|
||||
pub fn (t Time) clean12() string {
|
||||
znow := time.now()
|
||||
znow := now()
|
||||
// Today
|
||||
if t.month == znow.month && t.year == znow.year && t.day == znow.day {
|
||||
return t.get_fmt_time_str(.hhmm12)
|
||||
@ -93,28 +93,21 @@ pub fn (t Time) get_fmt_time_str(fmt_time FormatTime) string {
|
||||
return ''
|
||||
}
|
||||
tp := if t.hour > 11 { 'p.m.' } else { 'a.m.' }
|
||||
hour := if t.hour > 12 { t.hour - 12 } else if t.hour == 0 { 12 } else { t.hour }
|
||||
hour := if t.hour > 12 {
|
||||
t.hour - 12
|
||||
} else if t.hour == 0 {
|
||||
12
|
||||
} else {
|
||||
t.hour
|
||||
}
|
||||
return match fmt_time {
|
||||
.hhmm12{
|
||||
'$hour:${t.minute:02d} $tp'
|
||||
}
|
||||
.hhmm24{
|
||||
'${t.hour:02d}:${t.minute:02d}'
|
||||
}
|
||||
.hhmmss12{
|
||||
'$hour:${t.minute:02d}:${t.second:02d} $tp'
|
||||
}
|
||||
.hhmmss24{
|
||||
'${t.hour:02d}:${t.minute:02d}:${t.second:02d}'
|
||||
}
|
||||
.hhmmss24_milli{
|
||||
'${t.hour:02d}:${t.minute:02d}:${t.second:02d}.${(t.microsecond/1000):03d}'
|
||||
}
|
||||
.hhmmss24_micro{
|
||||
'${t.hour:02d}:${t.minute:02d}:${t.second:02d}.${t.microsecond:06d}'
|
||||
}
|
||||
else {
|
||||
'unknown enumeration $fmt_time'}
|
||||
.hhmm12 { '$hour:${t.minute:02d} $tp' }
|
||||
.hhmm24 { '${t.hour:02d}:${t.minute:02d}' }
|
||||
.hhmmss12 { '$hour:${t.minute:02d}:${t.second:02d} $tp' }
|
||||
.hhmmss24 { '${t.hour:02d}:${t.minute:02d}:${t.second:02d}' }
|
||||
.hhmmss24_milli { '${t.hour:02d}:${t.minute:02d}:${t.second:02d}.${(t.microsecond/1000):03d}' }
|
||||
.hhmmss24_micro { '${t.hour:02d}:${t.minute:02d}:${t.second:02d}.${t.microsecond:06d}' }
|
||||
else { 'unknown enumeration $fmt_time' }
|
||||
}
|
||||
}
|
||||
|
||||
@ -124,52 +117,27 @@ pub fn (t Time) get_fmt_date_str(fmt_dlmtr FormatDelimiter, fmt_date FormatDate)
|
||||
if fmt_date == .no_date {
|
||||
return ''
|
||||
}
|
||||
month := '${t.smonth()}'
|
||||
month := '$t.smonth()'
|
||||
year := t.year.str()[2..]
|
||||
mut res := match fmt_date {
|
||||
.ddmmyy{
|
||||
'${t.day:02d}|${t.month:02d}|$year'
|
||||
}
|
||||
.ddmmyyyy{
|
||||
'${t.day:02d}|${t.month:02d}|${t.year}'
|
||||
}
|
||||
.mmddyy{
|
||||
'${t.month:02d}|${t.day:02d}|$year'
|
||||
}
|
||||
.mmddyyyy{
|
||||
'${t.month:02d}|${t.day:02d}|${t.year}'
|
||||
}
|
||||
.mmmd{
|
||||
'$month|${t.day}'
|
||||
}
|
||||
.mmmdd{
|
||||
'$month|${t.day:02d}'
|
||||
}
|
||||
.mmmddyyyy{
|
||||
'$month|${t.day:02d}|${t.year}'
|
||||
}
|
||||
.yyyymmdd{
|
||||
'${t.year}|${t.month:02d}|${t.day:02d}'
|
||||
}
|
||||
else {
|
||||
'unknown enumeration $fmt_date'}}
|
||||
res = res.replace('|', match fmt_dlmtr {
|
||||
.dot{
|
||||
'.'
|
||||
}
|
||||
.hyphen{
|
||||
'-'
|
||||
}
|
||||
.slash{
|
||||
'/'
|
||||
}
|
||||
.space{
|
||||
' '
|
||||
}
|
||||
.no_delimiter{
|
||||
''
|
||||
}
|
||||
})
|
||||
mut res := match fmt_date {
|
||||
.ddmmyy { '${t.day:02d}|${t.month:02d}|$year' }
|
||||
.ddmmyyyy { '${t.day:02d}|${t.month:02d}|$t.year' }
|
||||
.mmddyy { '${t.month:02d}|${t.day:02d}|$year' }
|
||||
.mmddyyyy { '${t.month:02d}|${t.day:02d}|$t.year' }
|
||||
.mmmd { '$month|$t.day' }
|
||||
.mmmdd { '$month|${t.day:02d}' }
|
||||
.mmmddyyyy { '$month|${t.day:02d}|$t.year' }
|
||||
.yyyymmdd { '$t.year|${t.month:02d}|${t.day:02d}' }
|
||||
else { 'unknown enumeration $fmt_date' }
|
||||
}
|
||||
del := match fmt_dlmtr {
|
||||
.dot { '.' }
|
||||
.hyphen { '-' }
|
||||
.slash { '/' }
|
||||
.space { ' ' }
|
||||
.no_delimiter { '' }
|
||||
}
|
||||
res = res.replace('|', del)
|
||||
return res
|
||||
}
|
||||
|
||||
@ -181,25 +149,22 @@ pub fn (t Time) get_fmt_str(fmt_dlmtr FormatDelimiter, fmt_time FormatTime, fmt_
|
||||
// saving one function call although it's checked in
|
||||
// t.get_fmt_time_str(fmt_time) in the beginning
|
||||
return ''
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
return t.get_fmt_time_str(fmt_time)
|
||||
}
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
if fmt_time != .no_time {
|
||||
return t.get_fmt_date_str(fmt_dlmtr, fmt_date) + ' ' + t.get_fmt_time_str(fmt_time)
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
return t.get_fmt_date_str(fmt_dlmtr, fmt_date)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// This is just a TEMPORARY function for cookies and their expire dates
|
||||
pub fn (time Time) utc_string() string {
|
||||
day_str := time.weekday_str()
|
||||
month_str := time.smonth()
|
||||
utc_string := '$day_str, $time.day $month_str $time.year ${time.hour:02d}:${time.minute:02d}:${time.second:02d} UTC'
|
||||
pub fn (t Time) utc_string() string {
|
||||
day_str := t.weekday_str()
|
||||
month_str := t.smonth()
|
||||
utc_string := '$day_str, $t.day $month_str $t.year ${t.hour:02d}:${t.minute:02d}:${t.second:02d} UTC'
|
||||
return utc_string
|
||||
}
|
||||
|
@ -49,11 +49,22 @@ fn str_replace() {
|
||||
println(r)
|
||||
}
|
||||
|
||||
fn match_expr() string {
|
||||
x := 2
|
||||
res := match x {
|
||||
1 { 'one' }
|
||||
2 { 'two' }
|
||||
else { 'unknown' }
|
||||
}
|
||||
return res
|
||||
}
|
||||
|
||||
fn main() {
|
||||
println('start')
|
||||
foo()
|
||||
str_tmp_expr()
|
||||
str_inter()
|
||||
match_expr()
|
||||
// str_replace()
|
||||
println('end')
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user