aboutsummaryrefslogtreecommitdiff
path: root/.venv/lib/python3.12/site-packages/boto3/docs/method.py
diff options
context:
space:
mode:
authorS. Solomon Darnell2025-03-28 21:52:21 -0500
committerS. Solomon Darnell2025-03-28 21:52:21 -0500
commit4a52a71956a8d46fcb7294ac71734504bb09bcc2 (patch)
treeee3dc5af3b6313e921cd920906356f5d4febc4ed /.venv/lib/python3.12/site-packages/boto3/docs/method.py
parentcc961e04ba734dd72309fb548a2f97d67d578813 (diff)
downloadgn-ai-master.tar.gz
two version of R2R are hereHEADmaster
Diffstat (limited to '.venv/lib/python3.12/site-packages/boto3/docs/method.py')
-rw-r--r--.venv/lib/python3.12/site-packages/boto3/docs/method.py77
1 files changed, 77 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/boto3/docs/method.py b/.venv/lib/python3.12/site-packages/boto3/docs/method.py
new file mode 100644
index 00000000..a5b3b250
--- /dev/null
+++ b/.venv/lib/python3.12/site-packages/boto3/docs/method.py
@@ -0,0 +1,77 @@
+# Copyright 2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"). You
+# may not use this file except in compliance with the License. A copy of
+# the License is located at
+#
+# https://aws.amazon.com/apache2.0/
+#
+# or in the "license" file accompanying this file. This file is
+# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
+# ANY KIND, either express or implied. See the License for the specific
+# language governing permissions and limitations under the License.
+from botocore.docs.method import document_model_driven_method
+
+
+def document_model_driven_resource_method(
+ section,
+ method_name,
+ operation_model,
+ event_emitter,
+ method_description=None,
+ example_prefix=None,
+ include_input=None,
+ include_output=None,
+ exclude_input=None,
+ exclude_output=None,
+ document_output=True,
+ resource_action_model=None,
+ include_signature=True,
+):
+ document_model_driven_method(
+ section=section,
+ method_name=method_name,
+ operation_model=operation_model,
+ event_emitter=event_emitter,
+ method_description=method_description,
+ example_prefix=example_prefix,
+ include_input=include_input,
+ include_output=include_output,
+ exclude_input=exclude_input,
+ exclude_output=exclude_output,
+ document_output=document_output,
+ include_signature=include_signature,
+ )
+
+ # If this action returns a resource modify the return example to
+ # appropriately reflect that.
+ if resource_action_model.resource:
+ if 'return' in section.available_sections:
+ section.delete_section('return')
+ resource_type = resource_action_model.resource.type
+
+ new_return_section = section.add_new_section('return')
+ return_resource_type = (
+ f'{operation_model.service_model.service_name}.{resource_type}'
+ )
+
+ return_type = f':py:class:`{return_resource_type}`'
+ return_description = f'{resource_type} resource'
+
+ if _method_returns_resource_list(resource_action_model.resource):
+ return_type = f'list({return_type})'
+ return_description = f'A list of {resource_type} resources'
+
+ new_return_section.style.new_line()
+ new_return_section.write(f':rtype: {return_type}')
+ new_return_section.style.new_line()
+ new_return_section.write(f':returns: {return_description}')
+ new_return_section.style.new_line()
+
+
+def _method_returns_resource_list(resource):
+ for identifier in resource.identifiers:
+ if identifier.path and '[]' in identifier.path:
+ return True
+
+ return False