Skip to content

Commit df23306

Browse files
committed
Move redis-types to redis interface
Signed-off-by: Ryan Levick <[email protected]>
1 parent bd57c44 commit df23306

File tree

4 files changed

+24
-32
lines changed

4 files changed

+24
-32
lines changed

crates/world/src/conversions.rs

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -151,23 +151,19 @@ mod redis {
151151
impl From<v1::redis::RedisParameter> for v2::redis::RedisParameter {
152152
fn from(value: v1::redis::RedisParameter) -> Self {
153153
match value {
154-
v1::redis_types::RedisParameter::Int64(i) => {
155-
v2::redis_types::RedisParameter::Int64(i)
156-
}
157-
v1::redis_types::RedisParameter::Binary(b) => {
158-
v2::redis_types::RedisParameter::Binary(b)
159-
}
154+
v1::redis::RedisParameter::Int64(i) => v2::redis::RedisParameter::Int64(i),
155+
v1::redis::RedisParameter::Binary(b) => v2::redis::RedisParameter::Binary(b),
160156
}
161157
}
162158
}
163159

164160
impl From<v2::redis::RedisResult> for v1::redis::RedisResult {
165161
fn from(value: v2::redis::RedisResult) -> Self {
166162
match value {
167-
v2::redis_types::RedisResult::Nil => v1::redis_types::RedisResult::Nil,
168-
v2::redis_types::RedisResult::Status(s) => v1::redis_types::RedisResult::Status(s),
169-
v2::redis_types::RedisResult::Int64(i) => v1::redis_types::RedisResult::Int64(i),
170-
v2::redis_types::RedisResult::Binary(b) => v1::redis_types::RedisResult::Binary(b),
163+
v2::redis::RedisResult::Nil => v1::redis::RedisResult::Nil,
164+
v2::redis::RedisResult::Status(s) => v1::redis::RedisResult::Status(s),
165+
v2::redis::RedisResult::Int64(i) => v1::redis::RedisResult::Int64(i),
166+
v2::redis::RedisResult::Binary(b) => v1::redis::RedisResult::Binary(b),
171167
}
172168
}
173169
}

sdk/rust/src/lib.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,7 @@ pub mod http;
5353
pub mod redis {
5454
use std::hash::{Hash, Hasher};
5555

56-
pub use super::wit::v2::redis::{Connection, Error};
57-
pub use super::wit::v2::redis_types::{Payload, RedisParameter, RedisResult};
56+
pub use super::wit::v2::redis::{Connection, Error, Payload, RedisParameter, RedisResult};
5857

5958
impl PartialEq for RedisResult {
6059
fn eq(&self, other: &Self) -> bool {

wit/preview2/redis-types.wit

Lines changed: 0 additions & 18 deletions
This file was deleted.

wit/preview2/redis.wit

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
interface redis {
2-
use redis-types.{payload, redis-parameter, redis-result}
3-
42
/// Errors related to interacting with Redis
53
variant error {
64
/// An invalid address string
@@ -52,4 +50,21 @@ interface redis {
5250
/// Execute an arbitrary Redis command and receive the result.
5351
execute: func(command: string, arguments: list<redis-parameter>) -> result<list<redis-result>, error>
5452
}
53+
54+
/// The message payload.
55+
type payload = list<u8>
56+
57+
/// A parameter type for the general-purpose `execute` function.
58+
variant redis-parameter {
59+
int64(s64),
60+
binary(payload)
61+
}
62+
63+
/// A return type for the general-purpose `execute` function.
64+
variant redis-result {
65+
nil,
66+
status(string),
67+
int64(s64),
68+
binary(payload)
69+
}
5570
}

0 commit comments

Comments
 (0)