1    /* 
     2     *  Copyright (c) 2008 Texas Instruments. All rights reserved. 
     3     *  This program and the accompanying materials are made available under the 
     4     *  terms of the Eclipse Public License v1.0 and Eclipse Distribution License
     5     *  v. 1.0 which accompanies this distribution. The Eclipse Public License is
     6     *  available at http://www.eclipse.org/legal/epl-v10.html and the Eclipse
     7     *  Distribution License is available at 
     8     *  http://www.eclipse.org/org/documents/edl-v10.php.
     9     *
    10     *  Contributors:
    11     *      Texas Instruments - initial implementation
    12     * */
    13    /*
    14     *  ======== SysStd.xdc ========
    15     *
    16     */
    17     
    18    package xdc.runtime;
    19    
    20    /*!
    21     *  ======== SysStd ========
    22     *  Implementation of `{@link ISystemSupport}` using ANSI C Standard Library
    23     *
    24     *  This implementation provides a fully functional implementation of
    25     *  all methods specified by `ISystemSupport`. As with all
    26     *  `ISystemSupport` modules, this module is the back-end for the 
    27     *  `{@link System}` module.
    28     *
    29     *  This implementation relies on the target's runtime support libraries
    30     *  (i.e. `fflush()` and `putchar()`). Therefore the  functions are re-entrant
    31     *  (thread-safe) if the underlying rts library is re-entrant.
    32     */
    33    module SysStd inherits xdc.runtime.ISystemSupport {
    34        /*!
    35         *  ======== abort ========
    36         *  Backend for `{@link System#abort()}`
    37         *
    38         *  This abort function writes the string via `putchar()`
    39         *  and flushes via `fflush()` to `stdout`.
    40         *
    41         *  @see ISystemSupport#abort
    42         */
    43        override Void abort(String str);
    44        
    45        /*!
    46         *  ======== exit ========
    47         *  Backend for `{@link System#exit()}`
    48         *
    49         *  This exit function flushes via `fflush()` to `stdout`.
    50         *
    51         *  @see ISystemSupport#exit
    52         */
    53        override Void exit(Int stat);
    54        
    55        /*!
    56         *  ======== flush ========
    57         *  Backend for `{@link System#flush()}`
    58         *
    59         *  This flush function flushes via `fflush()` to `stdout`.
    60         *
    61         *  @see ISystemSupport#flush
    62         */
    63        override Void flush();
    64        
    65        /*!
    66         *  ======== putch ========
    67         *  Backend for `{@link System#printf()}` and `{@link System#putch()}`
    68         *
    69         *  This function outputs the character via `putchar()`.
    70         *
    71         *  @see ISystemSupport#putch
    72         */
    73        override Void putch(Char ch);
    74        
    75        /*!
    76         *  ======== ready ========
    77         *  Test if character output can proceed
    78         *
    79         *  This always returns TRUE.
    80         *
    81         *  @see ISystemSupport#ready
    82         */
    83        override Bool ready();
    84    }
    85    /*
    86     *  @(#) xdc.runtime; 2, 0, 0, 0,207; 6-9-2009 20:10:19; /db/ztree/library/trees/xdc-t50x/src/packages/
    87     */
    88