Patch title: Release 94 bulk changes
Abstract:
File: /pliant/language/type/misc/datetime.pli
Key:
    Removed line
    Added line
   
# Copyright  Hubert Tonneau  hubert.tonneau@pliant.cx
#
# This program is free software; you can redistribute it and
# modify it under the terms of the GNU General Public Licens
# as published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be us
# but WITHOUT ANY WARRANTY; without even the implied warrant
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See 
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public 
# version 2 along with this program; if not, write to the Fr
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 


method data 'to string' options -> s
  arg Time data ; arg Str options ; arg Str s
  if data=undefined
# Copyright  Hubert Tonneau  hubert.tonneau@pliant.cx
#
# This program is free software; you can redistribute it and
# modify it under the terms of the GNU General Public Licens
# as published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be us
# but WITHOUT ANY WARRANTY; without even the implied warrant
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See 
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public 
# version 2 along with this program; if not, write to the Fr
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 


method data 'to string' options -> s
  arg Time data ; arg Str options ; arg Str s
  if data=undefined
    return (shunt options="db" "" "?")
    return (shunt options="db" or options="raw" "" "?")
  data split (var Int hour) (var Int minute) (var Int second
  s := (right (string hour) 2 "0")+":"+(right (string minute


method data 'from string' string options may_skip skiped off
  arg_w Time data ; arg Str string options ; arg CBool may_s
  if (string eparse any:(var Str drop1) (var Int hour) ":" (
    skiped := drop1 len
    data := time hour minute second 0
    status := success
  data split (var Int hour) (var Int minute) (var Int second
  s := (right (string hour) 2 "0")+":"+(right (string minute


method data 'from string' string options may_skip skiped off
  arg_w Time data ; arg Str string options ; arg CBool may_s
  if (string eparse any:(var Str drop1) (var Int hour) ":" (
    skiped := drop1 len
    data := time hour minute second 0
    status := success
  eif (string eparse any:(var Str drop1) "?" offset:offset any:(var Str drop2))
    skiped := drop1 len
    data := undefined
    status := success
  else
    data := undefined
  else
    data := undefined
    status := shunt string="" and options="db" success failu
    status := shunt string="" and (options="db" or options="raw") success failure


method data 'to string' options -> s
  arg Date data ; arg Str options ; arg Str s
  if data=undefined


method data 'to string' options -> s
  arg Date data ; arg Str options ; arg Str s
  if data=undefined
    return (shunt options="db" "" "?")
    return (shunt options="db" or options="raw" "" "?")
  data split (var Int year) (var Int month) (var Int day)
  s := (right (string year) 4 "0")+"/"+(right (string month)


method data 'from string' string options may_skip skiped off
  arg_w Date data ; arg Str string options ; arg CBool may_s
  if (string eparse any:(var Str drop1) (var Int year) "/" (
    skiped := drop1 len
    data := date year month day
    status := success
  data split (var Int year) (var Int month) (var Int day)
  s := (right (string year) 4 "0")+"/"+(right (string month)


method data 'from string' string options may_skip skiped off
  arg_w Date data ; arg Str string options ; arg CBool may_s
  if (string eparse any:(var Str drop1) (var Int year) "/" (
    skiped := drop1 len
    data := date year month day
    status := success
  eif (string eparse any:(var Str drop1) "?" offset:offset any:(var Str drop2))
    skiped := drop1 len
    data := undefined
    status := success
  else
    data := undefined
  else
    data := undefined
    status := shunt string="" and options="db" success failu
    status := shunt string="" and (options="db" or options="raw") success failure


method data 'to string' options -> s
  arg DateTime data ; arg Str options ; arg Str s
  if data=undefined


method data 'to string' options -> s
  arg DateTime data ; arg Str options ; arg Str s
  if data=undefined
    return (shunt options="db" "" "?")
    return (shunt options="db" or options="raw" "" "?")
  data split (var Int year) (var Int month) (var Int day) (v
  s := (right (string year) 4 "0")+"/"+(right (string month)


method data 'from string' string options may_skip skiped off
  arg_w DateTime data ; arg Str string options ; arg CBool m
  if (string eparse any:(var Str drop1) (var Int year) "/" (
    skiped := drop1 len
    data := datetime year month day hour minute second 0
    status := success
  data split (var Int year) (var Int month) (var Int day) (v
  s := (right (string year) 4 "0")+"/"+(right (string month)


method data 'from string' string options may_skip skiped off
  arg_w DateTime data ; arg Str string options ; arg CBool m
  if (string eparse any:(var Str drop1) (var Int year) "/" (
    skiped := drop1 len
    data := datetime year month day hour minute second 0
    status := success
  eif (string eparse any:(var Str drop1) "?" offset:offset any:(var Str drop2))
    skiped := drop1 len
    data := undefined
    status := success
  else
    data := undefined
  else
    data := undefined
    status := shunt string="" and options="db" success failu
    status := shunt string="" and (options="db" or options="raw") success failure