aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorbors[bot] <26634292+bors[bot]@users.noreply.github.com>2022-02-08 17:30:04 +0000
committerGitHub <noreply@github.com>2022-02-08 17:30:04 +0000
commit055ca34daa803f5353ced57d2d30041b93701c8c (patch)
treee8b74aaca151a63935fb56f863a6c1fa38e5028f /gcc
parent5619eea6f62bffe58eaaeb508f45a855fc3ce1f4 (diff)
parentb7cdd81dbc7fe6e309825c883f9ccdcf108d26de (diff)
downloadgcc-055ca34daa803f5353ced57d2d30041b93701c8c.zip
gcc-055ca34daa803f5353ced57d2d30041b93701c8c.tar.gz
gcc-055ca34daa803f5353ced57d2d30041b93701c8c.tar.bz2
Merge #911
911: Refactor to_string from header to impl file r=philberty a=philberty This is part of the overal cleanup to move implementation into cc files from the headers. Co-authored-by: Philip Herron <philip.herron@embecosm.com>
Diffstat (limited to 'gcc')
-rw-r--r--gcc/rust/typecheck/rust-tyty.cc80
-rw-r--r--gcc/rust/typecheck/rust-tyty.h76
2 files changed, 78 insertions, 78 deletions
diff --git a/gcc/rust/typecheck/rust-tyty.cc b/gcc/rust/typecheck/rust-tyty.cc
index 6a65923..1f62aa5 100644
--- a/gcc/rust/typecheck/rust-tyty.cc
+++ b/gcc/rust/typecheck/rust-tyty.cc
@@ -30,12 +30,86 @@
#include "rust-hir-trait-ref.h"
#include "rust-hir-type-bounds.h"
-extern ::Backend *
-rust_get_backend ();
-
namespace Rust {
namespace TyTy {
+std::string
+TypeKindFormat::to_string (TypeKind kind)
+{
+ switch (kind)
+ {
+ case TypeKind::INFER:
+ return "Infer";
+
+ case TypeKind::ADT:
+ return "ADT";
+
+ case TypeKind::STR:
+ return "STR";
+
+ case TypeKind::REF:
+ return "REF";
+
+ case TypeKind::POINTER:
+ return "POINTER";
+
+ case TypeKind::PARAM:
+ return "PARAM";
+
+ case TypeKind::ARRAY:
+ return "ARRAY";
+
+ case TypeKind::FNDEF:
+ return "FnDef";
+
+ case TypeKind::FNPTR:
+ return "FnPtr";
+
+ case TypeKind::TUPLE:
+ return "Tuple";
+
+ case TypeKind::BOOL:
+ return "Bool";
+
+ case TypeKind::CHAR:
+ return "Char";
+
+ case TypeKind::INT:
+ return "Int";
+
+ case TypeKind::UINT:
+ return "Uint";
+
+ case TypeKind::FLOAT:
+ return "Float";
+
+ case TypeKind::USIZE:
+ return "Usize";
+
+ case TypeKind::ISIZE:
+ return "Isize";
+
+ case TypeKind::NEVER:
+ return "Never";
+
+ case TypeKind::PLACEHOLDER:
+ return "Placeholder";
+
+ case TypeKind::PROJECTION:
+ return "Projection";
+
+ case TypeKind::DYNAMIC:
+ return "Dynamic";
+
+ case TypeKind::CLOSURE:
+ return "Closure";
+
+ case TypeKind::ERROR:
+ return "ERROR";
+ }
+ gcc_unreachable ();
+}
+
bool
BaseType::satisfies_bound (const TypeBoundPredicate &predicate) const
{
diff --git a/gcc/rust/typecheck/rust-tyty.h b/gcc/rust/typecheck/rust-tyty.h
index 6c9daf7..1362a96 100644
--- a/gcc/rust/typecheck/rust-tyty.h
+++ b/gcc/rust/typecheck/rust-tyty.h
@@ -69,81 +69,7 @@ enum TypeKind
class TypeKindFormat
{
public:
- static std::string to_string (TypeKind kind)
- {
- switch (kind)
- {
- case TypeKind::INFER:
- return "Infer";
-
- case TypeKind::ADT:
- return "ADT";
-
- case TypeKind::STR:
- return "STR";
-
- case TypeKind::REF:
- return "REF";
-
- case TypeKind::POINTER:
- return "POINTER";
-
- case TypeKind::PARAM:
- return "PARAM";
-
- case TypeKind::ARRAY:
- return "ARRAY";
-
- case TypeKind::FNDEF:
- return "FnDef";
-
- case TypeKind::FNPTR:
- return "FnPtr";
-
- case TypeKind::TUPLE:
- return "Tuple";
-
- case TypeKind::BOOL:
- return "Bool";
-
- case TypeKind::CHAR:
- return "Char";
-
- case TypeKind::INT:
- return "Int";
-
- case TypeKind::UINT:
- return "Uint";
-
- case TypeKind::FLOAT:
- return "Float";
-
- case TypeKind::USIZE:
- return "Usize";
-
- case TypeKind::ISIZE:
- return "Isize";
-
- case TypeKind::NEVER:
- return "Never";
-
- case TypeKind::PLACEHOLDER:
- return "Placeholder";
-
- case TypeKind::PROJECTION:
- return "Projection";
-
- case TypeKind::DYNAMIC:
- return "Dynamic";
-
- case TypeKind::CLOSURE:
- return "Closure";
-
- case TypeKind::ERROR:
- return "ERROR";
- }
- gcc_unreachable ();
- }
+ static std::string to_string (TypeKind kind);
};
class BaseType;