173
|
1 //===-- runtime/edit-input.h ------------------------------------*- C++ -*-===//
|
|
2 //
|
|
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
4 // See https://llvm.org/LICENSE.txt for license information.
|
|
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
6 //
|
|
7 //===----------------------------------------------------------------------===//
|
|
8
|
|
9 #ifndef FORTRAN_RUNTIME_EDIT_INPUT_H_
|
|
10 #define FORTRAN_RUNTIME_EDIT_INPUT_H_
|
|
11
|
|
12 #include "format.h"
|
|
13 #include "io-stmt.h"
|
|
14 #include "flang/Decimal/decimal.h"
|
|
15
|
|
16 namespace Fortran::runtime::io {
|
|
17
|
|
18 bool EditIntegerInput(IoStatementState &, const DataEdit &, void *, int kind);
|
|
19
|
|
20 template <int binaryPrecision>
|
|
21 bool EditRealInput(IoStatementState &, const DataEdit &, void *);
|
|
22
|
|
23 bool EditLogicalInput(IoStatementState &, const DataEdit &, bool &);
|
|
24 bool EditDefaultCharacterInput(
|
|
25 IoStatementState &, const DataEdit &, char *, std::size_t);
|
|
26
|
|
27 extern template bool EditRealInput<8>(
|
|
28 IoStatementState &, const DataEdit &, void *);
|
|
29 extern template bool EditRealInput<11>(
|
|
30 IoStatementState &, const DataEdit &, void *);
|
|
31 extern template bool EditRealInput<24>(
|
|
32 IoStatementState &, const DataEdit &, void *);
|
|
33 extern template bool EditRealInput<53>(
|
|
34 IoStatementState &, const DataEdit &, void *);
|
|
35 extern template bool EditRealInput<64>(
|
|
36 IoStatementState &, const DataEdit &, void *);
|
|
37 extern template bool EditRealInput<113>(
|
|
38 IoStatementState &, const DataEdit &, void *);
|
|
39 } // namespace Fortran::runtime::io
|
|
40 #endif // FORTRAN_RUNTIME_EDIT_INPUT_H_
|