Remove patterns on 'String'

There's arguably no use case ever for that in the context of on-chain
  Plutus. Strings are really just meant to be used for tracing. They
  aren't meant to be manipulated as heavily as in classic programming
  languages.
This commit is contained in:
KtorZ
2023-02-11 16:57:14 +01:00
parent 6649821200
commit 2e8fd6e1c2
5 changed files with 2 additions and 29 deletions

View File

@@ -871,7 +871,6 @@ impl<'a> CodeGenerator<'a> {
pattern_vec.append(values);
}
Pattern::String { .. } => todo!("String matching in whens not yet implemented"),
Pattern::Var { name, .. } => {
pattern_vec.push(Air::Void {
scope: scope.clone(),
@@ -1060,7 +1059,6 @@ impl<'a> CodeGenerator<'a> {
) {
match pattern {
Pattern::Int { .. } => unreachable!(),
Pattern::String { .. } => unreachable!(),
Pattern::Var { .. } => unreachable!(),
Pattern::Assign { .. } => todo!("Nested assign not yet implemented"),
Pattern::Discard { .. } => {
@@ -1537,7 +1535,6 @@ impl<'a> CodeGenerator<'a> {
}
Pattern::Assign { .. } => todo!("Nested assign is not yet done"),
Pattern::Int { .. } => unimplemented!(),
Pattern::String { .. } => unimplemented!(),
}
}
@@ -1569,7 +1566,7 @@ impl<'a> CodeGenerator<'a> {
)
}
match pattern {
Pattern::Int { .. } | Pattern::String { .. } => unreachable!(),
Pattern::Int { .. } => unreachable!(),
Pattern::Var { name, .. } => {
pattern_vec.push(Air::Let {
name: name.clone(),
@@ -1690,7 +1687,6 @@ impl<'a> CodeGenerator<'a> {
) {
match pattern {
Pattern::Int { .. } => todo!(),
Pattern::String { .. } => todo!(),
Pattern::Var { .. } => todo!(),
Pattern::Assign { .. } => todo!(),
Pattern::Discard { .. } => todo!(),
@@ -1736,7 +1732,6 @@ impl<'a> CodeGenerator<'a> {
);
}
Pattern::Int { .. } => todo!(),
Pattern::String { .. } => todo!(),
Pattern::Assign { .. } => todo!(),
Pattern::Discard { .. } => {
names.push("_".to_string());
@@ -1904,7 +1899,6 @@ impl<'a> CodeGenerator<'a> {
) {
match pattern {
Pattern::Int { .. } => unreachable!(),
Pattern::String { .. } => unreachable!(),
Pattern::Var { name, .. } => {
pattern_vec.append(value_vec);
@@ -2651,7 +2645,6 @@ impl<'a> CodeGenerator<'a> {
(false, tuple_name)
}
Pattern::Int { .. } => todo!(),
Pattern::String { .. } => todo!(),
Pattern::Assign { .. } => todo!(),
};