Language.cpp 889 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /*
  2. * Copyright (c) 2020, the SerenityOS developers.
  3. *
  4. * SPDX-License-Identifier: BSD-2-Clause
  5. */
  6. #include "Language.h"
  7. namespace HackStudio {
  8. Language language_from_file_extension(const String& extension)
  9. {
  10. VERIFY(!extension.starts_with("."));
  11. if (extension == "cpp" || extension == "h")
  12. return Language::Cpp;
  13. else if (extension == "js")
  14. return Language::JavaScript;
  15. else if (extension == "gml")
  16. return Language::GML;
  17. else if (extension == "ini")
  18. return Language::Ini;
  19. else if (extension == "sh")
  20. return Language::Shell;
  21. return Language::Unknown;
  22. }
  23. Language language_from_name(const String& name)
  24. {
  25. if (name == "Cpp")
  26. return Language::Cpp;
  27. if (name == "Javascript")
  28. return Language::JavaScript;
  29. if (name == "Shell")
  30. return Language::Shell;
  31. return Language::Unknown;
  32. }
  33. }