• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //===- FrontendOptions.cpp ------------------------------------------------===//
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 #include "flang/Frontend/FrontendOptions.h"
10 #include "llvm/ADT/StringSwitch.h"
11 
12 using namespace Fortran::frontend;
13 
GetInputKindForExtension(llvm::StringRef extension)14 InputKind FrontendOptions::GetInputKindForExtension(llvm::StringRef extension) {
15   return llvm::StringSwitch<InputKind>(extension)
16       // TODO: Should match the list in flang/test/lit.cfg.py
17       // FIXME: Currently this API allows at most 9 items per case.
18       .Cases("f", "F", "f77", "f90", "F90", "f95", "F95", "ff95", "f18", "F18",
19           Language::Fortran)
20       .Default(Language::Unknown);
21 }
22