Patch title: Release 90 bulk changes
Abstract:
File: /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 d split year month day
  arg Date d ; arg_w Int year month day
  if d:days=defined
    var Int days := d days
    year := cast (days+14.75)/365.25+1-0.5 Int
    if (try_year year days month day)
      void
    eif (try_year year+1 days month day)
      year := year+1
    eif (try_year year-1 days month day)
      year := year-1
    else
# 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 d split year month day
  arg Date d ; arg_w Int year month day
  if d:days=defined
    var Int days := d days
    year := cast (days+14.75)/365.25+1-0.5 Int
    if (try_year year days month day)
      void
    eif (try_year year+1 days month day)
      year := year+1
    eif (try_year year-1 days month day)
      year := year-1
    else
      error error_id_check "Failed to extract Date year"
      year := undefined ; month := undefined ; day := undefined
      # error error_id_check "Failed to extract Date year"
  else
    year := undefined ; month := undefined ; day := undefine



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
  else
    data := undefined
    status := shunt string="" and options="db" success failu
  else
    year := undefined ; month := undefined ; day := undefine



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
  else
    data := undefined
    status := shunt string="" and options="db" success failu