From 6de3d7f184a4490d342a4c43af6a04b0b26f8cfd Mon Sep 17 00:00:00 2001 From: David Sherret Date: Fri, 25 Nov 2022 18:38:08 -0500 Subject: refactor: move cdp.rs to tools/repl (#16821) --- cli/cdp.rs | 426 ---------------------------------------------- cli/main.rs | 1 - cli/text_encoding.rs | 7 +- cli/tools/repl/cdp.rs | 426 ++++++++++++++++++++++++++++++++++++++++++++++ cli/tools/repl/editor.rs | 2 +- cli/tools/repl/mod.rs | 1 + cli/tools/repl/session.rs | 3 +- 7 files changed, 433 insertions(+), 433 deletions(-) delete mode 100644 cli/cdp.rs create mode 100644 cli/tools/repl/cdp.rs (limited to 'cli') diff --git a/cli/cdp.rs b/cli/cdp.rs deleted file mode 100644 index de2d784f7..000000000 --- a/cli/cdp.rs +++ /dev/null @@ -1,426 +0,0 @@ -// Copyright 2018-2022 the Deno authors. All rights reserved. MIT license. - -/// -use deno_core::serde_json; -use deno_core::serde_json::Value; -use serde::Deserialize; -use serde::Deserializer; -use serde::Serialize; - -/// -#[derive(Debug, Clone, Serialize)] -#[serde(rename_all = "camelCase")] -pub struct AwaitPromiseArgs { - pub promise_object_id: RemoteObjectId, - #[serde(skip_serializing_if = "Option::is_none")] - pub return_by_value: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub generate_preview: Option, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct AwaitPromiseResponse { - pub result: RemoteObject, - pub exception_details: Option, -} - -/// -#[derive(Debug, Clone, Serialize)] -#[serde(rename_all = "camelCase")] -pub struct CallFunctionOnArgs { - pub function_declaration: String, - #[serde(skip_serializing_if = "Option::is_none")] - pub object_id: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub arguments: Option>, - #[serde(skip_serializing_if = "Option::is_none")] - pub silent: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub return_by_value: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub generate_preview: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub user_gesture: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub await_promise: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub execution_context_id: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub object_group: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub throw_on_side_effect: Option, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct CallFunctionOnResponse { - pub result: RemoteObject, - pub exception_details: Option, -} - -/// -#[derive(Debug, Clone, Serialize)] -#[serde(rename_all = "camelCase")] -pub struct CompileScriptArgs { - pub expression: String, - #[serde(rename = "sourceURL")] - pub source_url: String, - #[serde(skip_serializing_if = "Option::is_none")] - pub execution_context_id: Option, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct CompileScriptResponse { - pub script_id: Option, - pub exception_details: Option, -} - -/// -#[derive(Debug, Clone, Serialize)] -#[serde(rename_all = "camelCase")] -pub struct EvaluateArgs { - pub expression: String, - #[serde(skip_serializing_if = "Option::is_none")] - pub object_group: Option, - #[serde( - rename = "includeCommandLineAPI", - skip_serializing_if = "Option::is_none" - )] - pub include_command_line_api: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub silent: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub context_id: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub return_by_value: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub generate_preview: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub user_gesture: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub await_promise: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub throw_on_side_effect: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub timeout: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub disable_breaks: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub repl_mode: Option, - #[serde(skip_serializing_if = "Option::is_none")] - #[serde(rename = "allowUnsafeEvalBlockedByCSP")] - pub allow_unsafe_eval_blocked_by_csp: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub unique_context_id: Option, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct EvaluateResponse { - pub result: RemoteObject, - pub exception_details: Option, -} - -/// -#[derive(Debug, Clone, Serialize)] -#[serde(rename_all = "camelCase")] -pub struct GetPropertiesArgs { - pub object_id: RemoteObjectId, - #[serde(skip_serializing_if = "Option::is_none")] - pub own_properties: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub accessor_properties_only: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub generate_preview: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub non_indexed_properties_only: Option, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct GetPropertiesResponse { - pub result: Vec, - pub internal_properties: Option>, - pub private_properties: Option>, - pub exception_details: Option, -} - -/// -#[derive(Debug, Clone, Serialize)] -#[serde(rename_all = "camelCase")] -pub struct GlobalLexicalScopeNamesArgs { - #[serde(skip_serializing_if = "Option::is_none")] - pub execution_context_id: Option, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct GlobalLexicalScopeNamesResponse { - pub names: Vec, -} - -/// -#[derive(Debug, Clone, Serialize)] -#[serde(rename_all = "camelCase")] -pub struct QueryObjectsArgs { - pub prototype_object_id: RemoteObjectId, - #[serde(skip_serializing_if = "Option::is_none")] - pub object_group: Option, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct QueryObjectsResponse { - pub objects: RemoteObject, -} - -/// -#[derive(Debug, Clone, Serialize)] -#[serde(rename_all = "camelCase")] -pub struct ReleaseObjectArgs { - pub object_id: RemoteObjectId, -} - -/// -#[derive(Debug, Clone, Serialize)] -#[serde(rename_all = "camelCase")] -pub struct ReleaseObjectGroupArgs { - pub object_group: String, -} - -/// -#[derive(Debug, Clone, Serialize)] -#[serde(rename_all = "camelCase")] -pub struct RunScriptArgs { - pub script_id: ScriptId, - #[serde(skip_serializing_if = "Option::is_none")] - pub execution_context_id: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub object_group: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub silent: Option, - #[serde( - rename = "includeCommandLineAPI", - skip_serializing_if = "Option::is_none" - )] - pub include_command_line_api: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub return_by_value: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub generate_preview: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub await_promise: Option, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct RunScriptResponse { - pub result: RemoteObject, - pub exception_details: Option, -} - -/// -#[derive(Debug, Clone, Serialize)] -#[serde(rename_all = "camelCase")] -pub struct SetAsyncCallStackDepthArgs { - pub max_depth: u64, -} - -// types - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct RemoteObject { - #[serde(rename = "type")] - pub kind: String, - pub subtype: Option, - pub class_name: Option, - #[serde(default, deserialize_with = "deserialize_some")] - pub value: Option, - pub unserializable_value: Option, - pub description: Option, - pub object_id: Option, - pub preview: Option, - pub custom_preview: Option, -} - -// Any value that is present is considered Some value, including null. -// ref: https://github.com/serde-rs/serde/issues/984#issuecomment-314143738 -fn deserialize_some<'de, T, D>(deserializer: D) -> Result, D::Error> -where - T: Deserialize<'de>, - D: Deserializer<'de>, -{ - Deserialize::deserialize(deserializer).map(Some) -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct ObjectPreview { - #[serde(rename = "type")] - pub kind: String, - pub subtype: Option, - pub description: Option, - pub overflow: bool, - pub properties: Vec, - pub entries: Option>, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct PropertyPreview { - pub name: String, - #[serde(rename = "type")] - pub kind: String, - pub value: Option, - pub value_preview: Option, - pub subtype: Option, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct EntryPreview { - pub key: Option, - pub value: ObjectPreview, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct CustomPreview { - pub header: String, - pub body_getter_id: RemoteObjectId, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct ExceptionDetails { - pub exception_id: u64, - pub text: String, - pub line_number: u64, - pub column_number: u64, - pub script_id: Option, - pub url: Option, - pub stack_trace: Option, - pub exception: Option, - pub execution_context_id: Option, - pub exception_meta_data: Option>, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct StackTrace { - pub description: Option, - pub call_frames: Vec, - pub parent: Option>, - pub parent_id: Option, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct CallFrame { - pub function_name: String, - pub script_id: ScriptId, - pub url: String, - pub line_number: u64, - pub column_number: u64, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct StackTraceId { - pub id: String, - pub debugger_id: Option, -} - -/// -#[derive(Debug, Clone, Serialize)] -#[serde(rename_all = "camelCase")] -pub struct CallArgument { - #[serde(skip_serializing_if = "Option::is_none")] - pub value: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub unserializable_value: Option, - #[serde(skip_serializing_if = "Option::is_none")] - pub object_id: Option, -} - -impl From<&RemoteObject> for CallArgument { - fn from(obj: &RemoteObject) -> Self { - Self { - value: obj.value.clone(), - unserializable_value: obj.unserializable_value.clone(), - object_id: obj.object_id.clone(), - } - } -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct PropertyDescriptor { - pub name: String, - pub value: Option, - pub writable: Option, - pub get: Option, - pub set: Option, - pub configurable: bool, - pub enumerable: bool, - pub was_thrown: Option, - pub is_own: Option, - pub symbol: Option, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct InternalPropertyDescriptor { - pub name: String, - pub value: Option, -} - -/// -#[derive(Debug, Clone, Deserialize)] -#[serde(rename_all = "camelCase")] -pub struct PrivatePropertyDescriptor { - pub name: String, - pub value: Option, - pub get: Option, - pub set: Option, -} - -/// -pub type RemoteObjectId = String; - -/// -pub type ExecutionContextId = u64; - -/// -pub type ScriptId = String; - -/// -pub type TimeDelta = u64; - -/// -pub type UnserializableValue = String; - -/// -pub type UniqueDebuggerId = String; diff --git a/cli/main.rs b/cli/main.rs index 2fb595b79..e42c6325e 100644 --- a/cli/main.rs +++ b/cli/main.rs @@ -3,7 +3,6 @@ mod args; mod auth_tokens; mod cache; -mod cdp; mod checksum; mod deno_dir; mod deno_std; diff --git a/cli/text_encoding.rs b/cli/text_encoding.rs index 2bb45beb0..c16a1289d 100644 --- a/cli/text_encoding.rs +++ b/cli/text_encoding.rs @@ -1,10 +1,9 @@ // Copyright 2018-2022 the Deno authors. All rights reserved. MIT license. use encoding_rs::*; -use std::{ - borrow::Cow, - io::{Error, ErrorKind}, -}; +use std::borrow::Cow; +use std::io::Error; +use std::io::ErrorKind; pub const BOM_CHAR: char = '\u{FEFF}'; diff --git a/cli/tools/repl/cdp.rs b/cli/tools/repl/cdp.rs new file mode 100644 index 000000000..de2d784f7 --- /dev/null +++ b/cli/tools/repl/cdp.rs @@ -0,0 +1,426 @@ +// Copyright 2018-2022 the Deno authors. All rights reserved. MIT license. + +/// +use deno_core::serde_json; +use deno_core::serde_json::Value; +use serde::Deserialize; +use serde::Deserializer; +use serde::Serialize; + +/// +#[derive(Debug, Clone, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct AwaitPromiseArgs { + pub promise_object_id: RemoteObjectId, + #[serde(skip_serializing_if = "Option::is_none")] + pub return_by_value: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub generate_preview: Option, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct AwaitPromiseResponse { + pub result: RemoteObject, + pub exception_details: Option, +} + +/// +#[derive(Debug, Clone, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct CallFunctionOnArgs { + pub function_declaration: String, + #[serde(skip_serializing_if = "Option::is_none")] + pub object_id: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub arguments: Option>, + #[serde(skip_serializing_if = "Option::is_none")] + pub silent: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub return_by_value: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub generate_preview: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub user_gesture: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub await_promise: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub execution_context_id: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub object_group: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub throw_on_side_effect: Option, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct CallFunctionOnResponse { + pub result: RemoteObject, + pub exception_details: Option, +} + +/// +#[derive(Debug, Clone, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct CompileScriptArgs { + pub expression: String, + #[serde(rename = "sourceURL")] + pub source_url: String, + #[serde(skip_serializing_if = "Option::is_none")] + pub execution_context_id: Option, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct CompileScriptResponse { + pub script_id: Option, + pub exception_details: Option, +} + +/// +#[derive(Debug, Clone, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct EvaluateArgs { + pub expression: String, + #[serde(skip_serializing_if = "Option::is_none")] + pub object_group: Option, + #[serde( + rename = "includeCommandLineAPI", + skip_serializing_if = "Option::is_none" + )] + pub include_command_line_api: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub silent: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub context_id: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub return_by_value: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub generate_preview: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub user_gesture: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub await_promise: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub throw_on_side_effect: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub timeout: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub disable_breaks: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub repl_mode: Option, + #[serde(skip_serializing_if = "Option::is_none")] + #[serde(rename = "allowUnsafeEvalBlockedByCSP")] + pub allow_unsafe_eval_blocked_by_csp: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub unique_context_id: Option, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct EvaluateResponse { + pub result: RemoteObject, + pub exception_details: Option, +} + +/// +#[derive(Debug, Clone, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct GetPropertiesArgs { + pub object_id: RemoteObjectId, + #[serde(skip_serializing_if = "Option::is_none")] + pub own_properties: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub accessor_properties_only: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub generate_preview: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub non_indexed_properties_only: Option, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct GetPropertiesResponse { + pub result: Vec, + pub internal_properties: Option>, + pub private_properties: Option>, + pub exception_details: Option, +} + +/// +#[derive(Debug, Clone, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct GlobalLexicalScopeNamesArgs { + #[serde(skip_serializing_if = "Option::is_none")] + pub execution_context_id: Option, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct GlobalLexicalScopeNamesResponse { + pub names: Vec, +} + +/// +#[derive(Debug, Clone, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct QueryObjectsArgs { + pub prototype_object_id: RemoteObjectId, + #[serde(skip_serializing_if = "Option::is_none")] + pub object_group: Option, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct QueryObjectsResponse { + pub objects: RemoteObject, +} + +/// +#[derive(Debug, Clone, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct ReleaseObjectArgs { + pub object_id: RemoteObjectId, +} + +/// +#[derive(Debug, Clone, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct ReleaseObjectGroupArgs { + pub object_group: String, +} + +/// +#[derive(Debug, Clone, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct RunScriptArgs { + pub script_id: ScriptId, + #[serde(skip_serializing_if = "Option::is_none")] + pub execution_context_id: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub object_group: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub silent: Option, + #[serde( + rename = "includeCommandLineAPI", + skip_serializing_if = "Option::is_none" + )] + pub include_command_line_api: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub return_by_value: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub generate_preview: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub await_promise: Option, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct RunScriptResponse { + pub result: RemoteObject, + pub exception_details: Option, +} + +/// +#[derive(Debug, Clone, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct SetAsyncCallStackDepthArgs { + pub max_depth: u64, +} + +// types + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct RemoteObject { + #[serde(rename = "type")] + pub kind: String, + pub subtype: Option, + pub class_name: Option, + #[serde(default, deserialize_with = "deserialize_some")] + pub value: Option, + pub unserializable_value: Option, + pub description: Option, + pub object_id: Option, + pub preview: Option, + pub custom_preview: Option, +} + +// Any value that is present is considered Some value, including null. +// ref: https://github.com/serde-rs/serde/issues/984#issuecomment-314143738 +fn deserialize_some<'de, T, D>(deserializer: D) -> Result, D::Error> +where + T: Deserialize<'de>, + D: Deserializer<'de>, +{ + Deserialize::deserialize(deserializer).map(Some) +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct ObjectPreview { + #[serde(rename = "type")] + pub kind: String, + pub subtype: Option, + pub description: Option, + pub overflow: bool, + pub properties: Vec, + pub entries: Option>, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct PropertyPreview { + pub name: String, + #[serde(rename = "type")] + pub kind: String, + pub value: Option, + pub value_preview: Option, + pub subtype: Option, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct EntryPreview { + pub key: Option, + pub value: ObjectPreview, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct CustomPreview { + pub header: String, + pub body_getter_id: RemoteObjectId, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct ExceptionDetails { + pub exception_id: u64, + pub text: String, + pub line_number: u64, + pub column_number: u64, + pub script_id: Option, + pub url: Option, + pub stack_trace: Option, + pub exception: Option, + pub execution_context_id: Option, + pub exception_meta_data: Option>, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct StackTrace { + pub description: Option, + pub call_frames: Vec, + pub parent: Option>, + pub parent_id: Option, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct CallFrame { + pub function_name: String, + pub script_id: ScriptId, + pub url: String, + pub line_number: u64, + pub column_number: u64, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct StackTraceId { + pub id: String, + pub debugger_id: Option, +} + +/// +#[derive(Debug, Clone, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct CallArgument { + #[serde(skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub unserializable_value: Option, + #[serde(skip_serializing_if = "Option::is_none")] + pub object_id: Option, +} + +impl From<&RemoteObject> for CallArgument { + fn from(obj: &RemoteObject) -> Self { + Self { + value: obj.value.clone(), + unserializable_value: obj.unserializable_value.clone(), + object_id: obj.object_id.clone(), + } + } +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct PropertyDescriptor { + pub name: String, + pub value: Option, + pub writable: Option, + pub get: Option, + pub set: Option, + pub configurable: bool, + pub enumerable: bool, + pub was_thrown: Option, + pub is_own: Option, + pub symbol: Option, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct InternalPropertyDescriptor { + pub name: String, + pub value: Option, +} + +/// +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct PrivatePropertyDescriptor { + pub name: String, + pub value: Option, + pub get: Option, + pub set: Option, +} + +/// +pub type RemoteObjectId = String; + +/// +pub type ExecutionContextId = u64; + +/// +pub type ScriptId = String; + +/// +pub type TimeDelta = u64; + +/// +pub type UnserializableValue = String; + +/// +pub type UniqueDebuggerId = String; diff --git a/cli/tools/repl/editor.rs b/cli/tools/repl/editor.rs index 73196d3f3..2ff9ee0b4 100644 --- a/cli/tools/repl/editor.rs +++ b/cli/tools/repl/editor.rs @@ -1,6 +1,5 @@ // Copyright 2018-2022 the Deno authors. All rights reserved. MIT license. -use crate::cdp; use crate::colors; use deno_ast::swc::parser::error::SyntaxError; use deno_ast::swc::parser::token::Token; @@ -32,6 +31,7 @@ use std::sync::atomic::AtomicBool; use std::sync::atomic::Ordering::Relaxed; use std::sync::Arc; +use super::cdp; use super::channel::RustylineSyncMessageSender; // Provides helpers to the editor like validation for multi-line edits, completion candidates for diff --git a/cli/tools/repl/mod.rs b/cli/tools/repl/mod.rs index e37591583..597b3ff5f 100644 --- a/cli/tools/repl/mod.rs +++ b/cli/tools/repl/mod.rs @@ -6,6 +6,7 @@ use deno_runtime::permissions::Permissions; use deno_runtime::worker::MainWorker; use rustyline::error::ReadlineError; +mod cdp; mod channel; mod editor; mod session; diff --git a/cli/tools/repl/session.rs b/cli/tools/repl/session.rs index f2cdfe568..e3bdac3b2 100644 --- a/cli/tools/repl/session.rs +++ b/cli/tools/repl/session.rs @@ -1,6 +1,5 @@ // Copyright 2018-2022 the Deno authors. All rights reserved. MIT license. -use crate::cdp; use crate::colors; use crate::lsp::ReplLanguageServer; use deno_ast::DiagnosticsError; @@ -12,6 +11,8 @@ use deno_core::serde_json::Value; use deno_core::LocalInspectorSession; use deno_runtime::worker::MainWorker; +use super::cdp; + static PRELUDE: &str = r#" Object.defineProperty(globalThis, "_", { configurable: true, -- cgit v1.2.3