2022-04-06 22:41:19 +02:00
|
|
|
module response
|
|
|
|
|
2023-02-08 11:00:17 +01:00
|
|
|
pub struct Response[T] {
|
2022-04-07 12:07:56 +02:00
|
|
|
pub:
|
2022-04-06 22:41:19 +02:00
|
|
|
message string
|
|
|
|
data T
|
|
|
|
}
|
|
|
|
|
2022-04-07 11:58:05 +02:00
|
|
|
// new_response constructs a new Response<String> object with the given message
|
|
|
|
// & an empty data field.
|
2023-02-08 11:00:17 +01:00
|
|
|
pub fn new_response(message string) Response[string] {
|
|
|
|
return Response[string]{
|
2022-04-06 22:41:19 +02:00
|
|
|
message: message
|
|
|
|
data: ''
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2023-02-08 11:11:28 +01:00
|
|
|
// new_data_response[T] constructs a new Response<T> object with the given data
|
2022-04-07 11:58:05 +02:00
|
|
|
// & an empty message field.
|
2023-02-08 11:00:17 +01:00
|
|
|
pub fn new_data_response[T](data T) Response[T] {
|
|
|
|
return Response[T]{
|
2022-04-06 22:41:19 +02:00
|
|
|
message: ''
|
|
|
|
data: data
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2023-02-08 11:11:28 +01:00
|
|
|
// new_full_response[T] constructs a new Response<T> object with the given
|
2022-04-07 11:58:05 +02:00
|
|
|
// message & data.
|
2023-02-08 11:00:17 +01:00
|
|
|
pub fn new_full_response[T](message string, data T) Response[T] {
|
|
|
|
return Response[T]{
|
2022-04-06 22:41:19 +02:00
|
|
|
message: message
|
|
|
|
data: data
|
|
|
|
}
|
|
|
|
}
|