#![allow(clippy::allow_attributes, clippy::pedantic, clippy::use_self, clippy::absolute_paths, missing_docs)]
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Unit {}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ObjectList {
#[prost(message, repeated, tag = "1")]
pub items: ::prost::alloc::vec::Vec<crate::WireObject>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pair {
#[prost(message, optional, tag = "1")]
pub key: ::core::option::Option<crate::WireObject>,
#[prost(message, optional, tag = "2")]
pub value: ::core::option::Option<crate::WireObject>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dict {
#[prost(message, repeated, tag = "1")]
pub pairs: ::prost::alloc::vec::Vec<Pair>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct BigInt {
#[prost(bool, tag = "1")]
pub negative: bool,
#[prost(bytes = "vec", tag = "2")]
pub magnitude: ::prost::alloc::vec::Vec<u8>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct NamedTuple {
#[prost(string, tag = "1")]
pub type_name: ::prost::alloc::string::String,
#[prost(string, repeated, tag = "2")]
pub field_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(message, repeated, tag = "3")]
pub values: ::prost::alloc::vec::Vec<crate::WireObject>,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Date {
#[prost(int32, tag = "1")]
pub year: i32,
#[prost(uint32, tag = "2")]
pub month: u32,
#[prost(uint32, tag = "3")]
pub day: u32,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct DateTime {
#[prost(int32, tag = "1")]
pub year: i32,
#[prost(uint32, tag = "2")]
pub month: u32,
#[prost(uint32, tag = "3")]
pub day: u32,
#[prost(uint32, tag = "4")]
pub hour: u32,
#[prost(uint32, tag = "5")]
pub minute: u32,
#[prost(uint32, tag = "6")]
pub second: u32,
#[prost(uint32, tag = "7")]
pub microsecond: u32,
#[prost(int32, optional, tag = "8")]
pub offset_seconds: ::core::option::Option<i32>,
#[prost(string, optional, tag = "9")]
pub timezone_name: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct TimeDelta {
#[prost(int32, tag = "1")]
pub days: i32,
#[prost(int32, tag = "2")]
pub seconds: i32,
#[prost(int32, tag = "3")]
pub microseconds: i32,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct TimeZone {
#[prost(int32, tag = "1")]
pub offset_seconds: i32,
#[prost(string, optional, tag = "2")]
pub name: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Exception {
#[prost(string, tag = "1")]
pub exc_type: ::prost::alloc::string::String,
#[prost(string, optional, tag = "2")]
pub arg: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct FileHandle {
#[prost(string, tag = "1")]
pub path: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub mode: ::prost::alloc::string::String,
#[prost(uint64, tag = "3")]
pub position: u64,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dataclass {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(uint64, tag = "2")]
pub type_id: u64,
#[prost(string, repeated, tag = "3")]
pub field_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(message, optional, tag = "4")]
pub attrs: ::core::option::Option<Dict>,
#[prost(bool, tag = "5")]
pub frozen: bool,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Function {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(string, optional, tag = "2")]
pub docstring: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Cycle {
#[prost(uint64, tag = "1")]
pub identity: u64,
#[prost(string, tag = "2")]
pub placeholder: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RaisedException {
#[prost(string, tag = "1")]
pub exc_type: ::prost::alloc::string::String,
#[prost(string, optional, tag = "2")]
pub message: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, repeated, tag = "3")]
pub traceback: ::prost::alloc::vec::Vec<StackFrame>,
#[prost(message, optional, tag = "4")]
pub data: ::core::option::Option<ExcData>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ExcData {
#[prost(oneof = "exc_data::Kind", tags = "1, 2")]
pub kind: ::core::option::Option<exc_data::Kind>,
}
pub mod exc_data {
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)]
pub enum Kind {
#[prost(message, tag = "1")]
Unicode(super::UnicodeErrorData),
#[prost(message, tag = "2")]
Json(super::JsonErrorData),
}
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct UnicodeErrorData {
#[prost(string, tag = "1")]
pub encoding: ::prost::alloc::string::String,
#[prost(uint64, tag = "4")]
pub start: u64,
#[prost(uint64, tag = "5")]
pub end: u64,
#[prost(string, tag = "6")]
pub reason: ::prost::alloc::string::String,
#[prost(oneof = "unicode_error_data::Object", tags = "2, 3")]
pub object: ::core::option::Option<unicode_error_data::Object>,
}
pub mod unicode_error_data {
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)]
pub enum Object {
#[prost(bytes, tag = "2")]
ObjectBytes(::prost::alloc::vec::Vec<u8>),
#[prost(string, tag = "3")]
ObjectStr(::prost::alloc::string::String),
}
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct JsonErrorData {
#[prost(string, tag = "1")]
pub msg: ::prost::alloc::string::String,
#[prost(string, optional, tag = "2")]
pub doc: ::core::option::Option<::prost::alloc::string::String>,
#[prost(uint64, tag = "3")]
pub pos: u64,
#[prost(uint64, tag = "4")]
pub lineno: u64,
#[prost(uint64, tag = "5")]
pub colno: u64,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct CodeLoc {
#[prost(uint32, tag = "1")]
pub line: u32,
#[prost(uint32, tag = "2")]
pub column: u32,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct StackFrame {
#[prost(string, tag = "1")]
pub filename: ::prost::alloc::string::String,
#[prost(message, optional, tag = "2")]
pub start: ::core::option::Option<CodeLoc>,
#[prost(message, optional, tag = "3")]
pub end: ::core::option::Option<CodeLoc>,
#[prost(string, optional, tag = "4")]
pub frame_name: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag = "5")]
pub preview_line: ::core::option::Option<::prost::alloc::string::String>,
#[prost(bool, tag = "6")]
pub hide_caret: bool,
#[prost(bool, tag = "7")]
pub hide_frame_name: bool,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ResourceLimits {
#[prost(uint64, optional, tag = "1")]
pub max_duration_micros: ::core::option::Option<u64>,
#[prost(uint64, optional, tag = "2")]
pub max_memory_bytes: ::core::option::Option<u64>,
#[prost(uint64, optional, tag = "3")]
pub gc_interval: ::core::option::Option<u64>,
#[prost(uint64, optional, tag = "4")]
pub max_recursion_depth: ::core::option::Option<u64>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ExtFunctionResult {
#[prost(oneof = "ext_function_result::Kind", tags = "1, 2, 3, 4, 5")]
pub kind: ::core::option::Option<ext_function_result::Kind>,
}
pub mod ext_function_result {
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Kind {
#[prost(message, tag = "1")]
ReturnValue(crate::WireObject),
#[prost(message, tag = "2")]
Error(super::RaisedException),
#[prost(uint32, tag = "3")]
Future(u32),
#[prost(string, tag = "4")]
NotFound(::prost::alloc::string::String),
#[prost(message, tag = "5")]
NotHandled(super::Unit),
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FutureResult {
#[prost(uint32, tag = "1")]
pub call_id: u32,
#[prost(message, optional, tag = "2")]
pub result: ::core::option::Option<ExtFunctionResult>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct NamedValue {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(message, optional, tag = "2")]
pub value: ::core::option::Option<crate::WireObject>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ParentRequest {
#[prost(string, optional, tag = "20")]
pub trace_parent: ::core::option::Option<::prost::alloc::string::String>,
#[prost(oneof = "parent_request::Kind", tags = "1, 2, 3, 4, 5, 6, 7, 8, 9, 10")]
pub kind: ::core::option::Option<parent_request::Kind>,
}
pub mod parent_request {
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Kind {
#[prost(message, tag = "1")]
Configure(super::Configure),
#[prost(message, tag = "2")]
InstallDependencies(super::InstallDependencies),
#[prost(message, tag = "3")]
Feed(super::Feed),
#[prost(message, tag = "4")]
ResumeCall(super::ResumeCall),
#[prost(message, tag = "5")]
ResumeNameLookup(super::ResumeNameLookup),
#[prost(message, tag = "6")]
ResumeFutures(super::ResumeFutures),
#[prost(message, tag = "7")]
Dump(super::Dump),
#[prost(message, tag = "8")]
Load(super::Load),
#[prost(message, tag = "9")]
Reset(super::Reset),
#[prost(message, tag = "10")]
Shutdown(super::Shutdown),
}
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Configure {
#[prost(string, tag = "1")]
pub script_name: ::prost::alloc::string::String,
#[prost(message, optional, tag = "2")]
pub limits: ::core::option::Option<ResourceLimits>,
#[prost(bool, tag = "3")]
pub type_check: bool,
#[prost(string, optional, tag = "4")]
pub type_check_stubs: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag = "5")]
pub monty_version: ::prost::alloc::string::String,
#[prost(uint32, optional, tag = "6")]
pub assert_message_annotations: ::core::option::Option<u32>,
#[prost(enumeration = "TypeCheckFormat", tag = "7")]
pub type_check_format: i32,
#[prost(bool, tag = "8")]
pub type_check_color: bool,
#[prost(uint32, tag = "9")]
pub protocol_version: u32,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Feed {
#[prost(string, tag = "1")]
pub code: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "2")]
pub inputs: ::prost::alloc::vec::Vec<NamedValue>,
#[prost(bool, tag = "3")]
pub skip_type_check: bool,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ResumeCall {
#[prost(uint32, tag = "1")]
pub call_id: u32,
#[prost(message, optional, tag = "2")]
pub result: ::core::option::Option<ExtFunctionResult>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ResumeNameLookup {
#[prost(oneof = "resume_name_lookup::Kind", tags = "1, 2")]
pub kind: ::core::option::Option<resume_name_lookup::Kind>,
}
pub mod resume_name_lookup {
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Kind {
#[prost(message, tag = "1")]
Value(crate::WireObject),
#[prost(message, tag = "2")]
Undefined(super::Unit),
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ResumeFutures {
#[prost(message, repeated, tag = "1")]
pub results: ::prost::alloc::vec::Vec<FutureResult>,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Dump {}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Load {
#[prost(bytes = "vec", tag = "1")]
pub state: ::prost::alloc::vec::Vec<u8>,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Reset {}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Shutdown {}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct InstallDependencies {
#[prost(string, repeated, tag = "1")]
pub requirements: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ChildEvent {
#[prost(uint64, tag = "20")]
pub total_execution_micros: u64,
#[prost(uint64, optional, tag = "21")]
pub max_duration_micros: ::core::option::Option<u64>,
#[prost(string, optional, tag = "22")]
pub restored_script_name: ::core::option::Option<::prost::alloc::string::String>,
#[prost(oneof = "child_event::Kind", tags = "1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12")]
pub kind: ::core::option::Option<child_event::Kind>,
}
pub mod child_event {
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Kind {
#[prost(message, tag = "1")]
Print(super::Print),
#[prost(message, tag = "2")]
FunctionCall(crate::WireFunctionCall),
#[prost(message, tag = "3")]
OsCall(super::OsCall),
#[prost(message, tag = "4")]
NameLookup(super::NameLookup),
#[prost(message, tag = "5")]
ResolveFutures(super::ResolveFutures),
#[prost(message, tag = "6")]
Complete(super::Complete),
#[prost(message, tag = "7")]
Error(super::Error),
#[prost(message, tag = "8")]
TypingError(super::TypingError),
#[prost(message, tag = "9")]
DumpResult(super::DumpResult),
#[prost(message, tag = "10")]
Ok(super::Ok),
#[prost(message, tag = "11")]
FatalError(super::FatalError),
#[prost(message, tag = "12")]
Shutdown(super::ShutdownDump),
}
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Print {
#[prost(enumeration = "PrintStream", tag = "1")]
pub stream: i32,
#[prost(string, tag = "2")]
pub text: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OsCall {
#[prost(uint32, tag = "1")]
pub call_id: u32,
#[prost(
oneof = "os_call::Call",
tags = "2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24"
)]
pub call: ::core::option::Option<os_call::Call>,
}
pub mod os_call {
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct TextWrite {
#[prost(string, tag = "1")]
pub path: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub data: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct BytesWrite {
#[prost(string, tag = "1")]
pub path: ::prost::alloc::string::String,
#[prost(bytes = "vec", tag = "2")]
pub data: ::prost::alloc::vec::Vec<u8>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Open {
#[prost(string, tag = "1")]
pub path: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub mode: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Mkdir {
#[prost(string, tag = "1")]
pub path: ::prost::alloc::string::String,
#[prost(bool, tag = "2")]
pub parents: bool,
#[prost(bool, tag = "3")]
pub exist_ok: bool,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Rename {
#[prost(string, tag = "1")]
pub src: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub dst: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Getenv {
#[prost(string, tag = "1")]
pub key: ::prost::alloc::string::String,
#[prost(message, optional, tag = "2")]
pub default: ::core::option::Option<crate::WireObject>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct DateTimeNow {
#[prost(message, optional, tag = "1")]
pub tz: ::core::option::Option<super::TimeZone>,
}
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Call {
#[prost(string, tag = "2")]
Exists(::prost::alloc::string::String),
#[prost(string, tag = "3")]
IsFile(::prost::alloc::string::String),
#[prost(string, tag = "4")]
IsDir(::prost::alloc::string::String),
#[prost(string, tag = "5")]
IsSymlink(::prost::alloc::string::String),
#[prost(string, tag = "6")]
ReadText(::prost::alloc::string::String),
#[prost(string, tag = "7")]
ReadBytes(::prost::alloc::string::String),
#[prost(string, tag = "8")]
Stat(::prost::alloc::string::String),
#[prost(string, tag = "9")]
Iterdir(::prost::alloc::string::String),
#[prost(string, tag = "10")]
Resolve(::prost::alloc::string::String),
#[prost(string, tag = "11")]
Absolute(::prost::alloc::string::String),
#[prost(string, tag = "12")]
Unlink(::prost::alloc::string::String),
#[prost(string, tag = "13")]
Rmdir(::prost::alloc::string::String),
#[prost(message, tag = "14")]
WriteText(TextWrite),
#[prost(message, tag = "15")]
AppendText(TextWrite),
#[prost(message, tag = "16")]
WriteBytes(BytesWrite),
#[prost(message, tag = "17")]
AppendBytes(BytesWrite),
#[prost(message, tag = "18")]
Open(Open),
#[prost(message, tag = "19")]
Mkdir(Mkdir),
#[prost(message, tag = "20")]
Rename(Rename),
#[prost(message, tag = "21")]
Getenv(Getenv),
#[prost(message, tag = "22")]
GetEnviron(super::Unit),
#[prost(message, tag = "23")]
DateToday(super::Unit),
#[prost(message, tag = "24")]
DateTimeNow(DateTimeNow),
}
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct NameLookup {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ResolveFutures {
#[prost(uint32, repeated, tag = "1")]
pub pending_call_ids: ::prost::alloc::vec::Vec<u32>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Complete {
#[prost(message, optional, tag = "1")]
pub value: ::core::option::Option<crate::WireObject>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Error {
#[prost(message, optional, tag = "1")]
pub exception: ::core::option::Option<RaisedException>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct TypingError {
#[prost(string, tag = "1")]
pub diagnostics: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct DumpResult {
#[prost(bytes = "vec", tag = "1")]
pub state: ::prost::alloc::vec::Vec<u8>,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Ok {}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct FatalError {
#[prost(string, tag = "1")]
pub message: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ShutdownDump {
#[prost(bytes = "vec", optional, tag = "1")]
pub dump: ::core::option::Option<::prost::alloc::vec::Vec<u8>>,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum TypeCheckFormat {
Unspecified = 0,
Full = 1,
Concise = 2,
Azure = 3,
Json = 4,
JsonLines = 5,
Rdjson = 6,
Pylint = 7,
Gitlab = 8,
Github = 9,
}
impl TypeCheckFormat {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "TYPE_CHECK_FORMAT_UNSPECIFIED",
Self::Full => "TYPE_CHECK_FORMAT_FULL",
Self::Concise => "TYPE_CHECK_FORMAT_CONCISE",
Self::Azure => "TYPE_CHECK_FORMAT_AZURE",
Self::Json => "TYPE_CHECK_FORMAT_JSON",
Self::JsonLines => "TYPE_CHECK_FORMAT_JSON_LINES",
Self::Rdjson => "TYPE_CHECK_FORMAT_RDJSON",
Self::Pylint => "TYPE_CHECK_FORMAT_PYLINT",
Self::Gitlab => "TYPE_CHECK_FORMAT_GITLAB",
Self::Github => "TYPE_CHECK_FORMAT_GITHUB",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"TYPE_CHECK_FORMAT_UNSPECIFIED" => Some(Self::Unspecified),
"TYPE_CHECK_FORMAT_FULL" => Some(Self::Full),
"TYPE_CHECK_FORMAT_CONCISE" => Some(Self::Concise),
"TYPE_CHECK_FORMAT_AZURE" => Some(Self::Azure),
"TYPE_CHECK_FORMAT_JSON" => Some(Self::Json),
"TYPE_CHECK_FORMAT_JSON_LINES" => Some(Self::JsonLines),
"TYPE_CHECK_FORMAT_RDJSON" => Some(Self::Rdjson),
"TYPE_CHECK_FORMAT_PYLINT" => Some(Self::Pylint),
"TYPE_CHECK_FORMAT_GITLAB" => Some(Self::Gitlab),
"TYPE_CHECK_FORMAT_GITHUB" => Some(Self::Github),
_ => None,
}
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum PrintStream {
Unspecified = 0,
Stdout = 1,
Stderr = 2,
}
impl PrintStream {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "PRINT_STREAM_UNSPECIFIED",
Self::Stdout => "PRINT_STREAM_STDOUT",
Self::Stderr => "PRINT_STREAM_STDERR",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"PRINT_STREAM_UNSPECIFIED" => Some(Self::Unspecified),
"PRINT_STREAM_STDOUT" => Some(Self::Stdout),
"PRINT_STREAM_STDERR" => Some(Self::Stderr),
_ => None,
}
}
}