Lichen

lib/sys.py

609:3a80900f08ff
2017-02-21 Paul Boddie Only copy changed template files and only generate updated program files, removing the "make clean" invocation and permitting incremental builds. Changed constant labelling to employ content digests so that constant names remain stable and do not confuse already-generated code. method-wrapper-for-context
     1 #!/usr/bin/env python     2      3 """     4 System functions and objects.     5      6 Copyright (C) 2008, 2012, 2014, 2016, 2017 Paul Boddie <paul@boddie.org.uk>     7      8 This program is free software; you can redistribute it and/or modify it under     9 the terms of the GNU General Public License as published by the Free Software    10 Foundation; either version 3 of the License, or (at your option) any later    11 version.    12     13 This program is distributed in the hope that it will be useful, but WITHOUT    14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS    15 FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more    16 details.    17     18 You should have received a copy of the GNU General Public License along with    19 this program.  If not, see <http://www.gnu.org/licenses/>.    20 """    21     22 from __builtins__.int import maxint, minint    23 from libc.io import lstdin, stdin, stdout, stderr    24     25 from native import (    26     exit as _exit,    27     get_argv as _get_argv,    28     get_path as _get_path    29     )    30     31 # NOTE: Environment details to be implemented.    32     33 argv = _get_argv()    34 path = _get_path()    35     36 # Functions to be implemented natively.    37     38 def exit(status=0):    39     _exit(int(status))    40     41 # vim: tabstop=4 expandtab shiftwidth=4