summaryrefslogtreecommitdiff
path: root/src/hir/generic_params.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/hir/generic_params.cpp')
-rw-r--r--src/hir/generic_params.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/hir/generic_params.cpp b/src/hir/generic_params.cpp
new file mode 100644
index 00000000..b2b72148
--- /dev/null
+++ b/src/hir/generic_params.cpp
@@ -0,0 +1,30 @@
+/*
+ */
+#include "generic_params.hpp"
+
+namespace HIR {
+ ::std::ostream& operator<<(::std::ostream& os, const ::HIR::GenericParams::PrintArgs& x)
+ {
+ if( x.gp.m_lifetimes.size() > 0 || x.gp.m_types.size() > 0 )
+ {
+ os << "<";
+ for(const auto& lft : x.gp.m_lifetimes) {
+ os << "'" << lft << ",";
+ }
+ for(const auto& typ : x.gp.m_types) {
+ os << typ.m_name;
+ if( ! typ.m_is_sized )
+ os << ": ?Sized";
+ if( !typ.m_default.m_data.is_Infer() )
+ os << " = " << typ.m_default;
+ os << ",";
+ }
+ os << ">";
+ }
+ return os;
+ }
+ ::std::ostream& operator<<(::std::ostream& os, const ::HIR::GenericParams::PrintBounds& x)
+ {
+ return os;
+ }
+}