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    package xdc.runtime;
    18    
    19    /*!
    20     *  ======== SysStd ========
    21     *  Implementation of `{@link ISystemSupport}` using ANSI C Standard Library
    22     *
    23     *  This implementation provides a fully functional implementation of
    24     *  all methods specified by `ISystemSupport`. As with all
    25     *  `ISystemSupport` modules, this module is the back-end for the
    26     *  `{@link System}` module.
    27     *
    28     *  This implementation relies on the target's runtime support libraries
    29     *  (i.e. `fflush()` and `putchar()`). Therefore the  functions are re-entrant
    30     *  (thread-safe) if the underlying rts library is re-entrant.
    31     */
    32    @RomConsts
    33    
    34    module SysStd inherits xdc.runtime.ISystemSupport {
    35        /*!
    36         *  ======== abort ========
    37         *  Backend for `{@link System#abort()}`
    38         *
    39         *  This abort function writes the string via `putchar()`
    40         *  and flushes via `fflush()` to `stdout`.
    41         *
    42         *  @see ISystemSupport#abort
    43         */
    44        override Void abort(CString str);
    45    
    46        /*!
    47         *  ======== exit ========
    48         *  Backend for `{@link System#exit()}`
    49         *
    50         *  This exit function flushes via `fflush()` to `stdout`.
    51         *
    52         *  @see ISystemSupport#exit
    53         */
    54        override Void exit(Int stat);
    55    
    56        /*!
    57         *  ======== flush ========
    58         *  Backend for `{@link System#flush()}`
    59         *
    60         *  This flush function flushes via `fflush()` to `stdout`.
    61         *
    62         *  @see ISystemSupport#flush
    63         */
    64        override Void flush();
    65    
    66        /*!
    67         *  ======== putch ========
    68         *  Backend for `{@link System#printf()}` and `{@link System#putch()}`
    69         *
    70         *  This function outputs the character via `putchar()`.
    71         *
    72         *  @see ISystemSupport#putch
    73         */
    74        override Void putch(Char ch);
    75    
    76        /*!
    77         *  ======== ready ========
    78         *  Test if character output can proceed
    79         *
    80         *  This always returns TRUE.
    81         *
    82         *  @see ISystemSupport#ready
    83         */
    84        override Bool ready();
    85    }
    86    /*
    87     *  @(#) xdc.runtime; 2, 1, 0,0; 7-26-2016 11:46:16; /db/ztree/library/trees/xdc/xdc-B21/src/packages/
    88     */
    89