kaqing 2.0.68__tar.gz → 2.0.70__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {kaqing-2.0.68 → kaqing-2.0.70}/PKG-INFO +1 -1
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/sql/sql_completer.py +35 -7
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/sql/term_completer.py +1 -1
- kaqing-2.0.70/adam/version.py +5 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/kaqing.egg-info/PKG-INFO +1 -1
- {kaqing-2.0.68 → kaqing-2.0.70}/setup.py +1 -1
- kaqing-2.0.68/adam/version.py +0 -5
- {kaqing-2.0.68 → kaqing-2.0.70}/README +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/__init__.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/app_session.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/apps.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/batch.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/checks/__init__.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/checks/check.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/checks/check_context.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/checks/check_result.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/checks/check_utils.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/checks/compactionstats.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/checks/cpu.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/checks/disk.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/checks/gossip.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/checks/issue.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/checks/memory.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/checks/status.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/cli.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/cli_group.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/__init__.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/column.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/columns.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/compactions.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/cpu.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/dir_data.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/dir_snapshots.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/gossip.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/host_id.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/memory.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/node_address.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/node_load.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/node_owns.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/node_status.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/node_tokens.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/node_utils.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/pod_name.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/volume_cassandra.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/columns/volume_root.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/__init__.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/alter_tables.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/app.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/app_ping.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/bash.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/cd.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/check.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/cli_commands.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/command.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/command_helpers.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/commands_utils.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/cp.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/cql/__init__.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/cql/cql_completions.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/cql/cql_table_completer.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/cql/cql_utils.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/cql/cqlsh.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/deploy/__init__.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/deploy/code_start.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/deploy/code_stop.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/deploy/code_utils.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/deploy/deploy.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/deploy/deploy_frontend.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/deploy/deploy_pg_agent.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/deploy/deploy_pod.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/deploy/deploy_utils.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/deploy/undeploy.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/deploy/undeploy_frontend.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/deploy/undeploy_pg_agent.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/deploy/undeploy_pod.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/describe/__init__.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/describe/describe.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/describe/describe_keyspace.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/describe/describe_keyspaces.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/describe/describe_table.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/describe/describe_tables.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/devices.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/exit.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/help.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/issues.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/login.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/logs.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/ls.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/medusa/__init__.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/medusa/medusa.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/medusa/medusa_backup.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/medusa/medusa_restore.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/medusa/medusa_show_backupjobs.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/medusa/medusa_show_restorejobs.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/nodetool.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/nodetool_commands.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/param_get.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/param_set.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/postgres/__init__.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/postgres/postgres.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/postgres/postgres_ls.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/postgres/postgres_preview.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/postgres/postgres_session.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/postgres/postgres_utils.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/postgres/psql_completions.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/postgres/psql_table_completer.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/preview_table.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/pwd.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/reaper/__init__.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/reaper/reaper.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/reaper/reaper_forward.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/reaper/reaper_forward_stop.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/reaper/reaper_restart.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/reaper/reaper_run_abort.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/reaper/reaper_runs.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/reaper/reaper_runs_abort.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/reaper/reaper_schedule_activate.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/reaper/reaper_schedule_start.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/reaper/reaper_schedule_stop.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/reaper/reaper_schedules.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/reaper/reaper_session.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/reaper/reaper_status.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/repair/__init__.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/repair/repair.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/repair/repair_log.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/repair/repair_run.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/repair/repair_scan.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/repair/repair_stop.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/report.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/restart.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/rollout.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/shell.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/show/__init__.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/show/show.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/show/show_adam.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/show/show_app_actions.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/show/show_app_id.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/show/show_app_queues.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/show/show_cassandra_status.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/show/show_cassandra_version.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/show/show_commands.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/show/show_login.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/show/show_params.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/show/show_processes.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/show/show_repairs.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/show/show_storage.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/commands/watch.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/config.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/embedded_apps.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/embedded_params.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/k8s_utils/__init__.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/k8s_utils/cassandra_clusters.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/k8s_utils/cassandra_nodes.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/k8s_utils/config_maps.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/k8s_utils/custom_resources.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/k8s_utils/deployment.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/k8s_utils/ingresses.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/k8s_utils/jobs.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/k8s_utils/kube_context.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/k8s_utils/pods.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/k8s_utils/secrets.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/k8s_utils/service_accounts.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/k8s_utils/services.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/k8s_utils/statefulsets.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/k8s_utils/volumes.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/log.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/pod_exec_result.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/repl.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/repl_commands.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/repl_session.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/repl_state.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/sql/__init__.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/sso/__init__.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/sso/authenticator.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/sso/authn_ad.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/sso/authn_okta.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/sso/cred_cache.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/sso/id_token.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/sso/idp.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/sso/idp_login.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/sso/idp_session.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/sso/sso_config.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/adam/utils.py +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/kaqing.egg-info/SOURCES.txt +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/kaqing.egg-info/dependency_links.txt +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/kaqing.egg-info/entry_points.txt +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/kaqing.egg-info/top_level.txt +0 -0
- {kaqing-2.0.68 → kaqing-2.0.70}/setup.cfg +0 -0
@@ -194,10 +194,10 @@ class SqlCompleter(Completer):
|
|
194
194
|
'select_a_comma_ > name|* > select_a ^ *',
|
195
195
|
'select_a_ > from > select_from ^ from',
|
196
196
|
'select_from_ > name > select_from_x ^ (select,tables',
|
197
|
-
'- >
|
197
|
+
'- > { > select_from_x_lp_',
|
198
198
|
'select_from_x_lp_ > select > select',
|
199
199
|
'select_from_x > , > select_from_x_comma_',
|
200
|
-
'- >
|
200
|
+
'- > } > select_from_x_rp_',
|
201
201
|
'select_from_x_rp__ > as > select_from_x_as ^ as',
|
202
202
|
'select_from_x_comma_ > name > select_from_x ^ tables',
|
203
203
|
'select_from_x_ ^ as,where,inner join,left outer join,right outer join,full outer join,group by,limit',
|
@@ -219,6 +219,7 @@ class SqlCompleter(Completer):
|
|
219
219
|
'- > full outer join > select_join',
|
220
220
|
'select_from_x_as_ > name > select_from_x_as_x ^ x,y,z',
|
221
221
|
'select_from_x_as_x > , > select_from_x_as_x_comma_',
|
222
|
+
'- > } > select_where_sc_re_',
|
222
223
|
'select_from_x_as_x_comma_ > name > select_from_x ^ tables',
|
223
224
|
'select_where_ > name > select_where_a ^ id,x.,y.,z.',
|
224
225
|
'select_where_a > comparison > select_where_a_op ^ =,<,<=,>,>=,<>,like,not,in',
|
@@ -237,7 +238,15 @@ class SqlCompleter(Completer):
|
|
237
238
|
'select_where_a_not_op > name|single|num > select_where_sc ^ single',
|
238
239
|
'select_where_a_op > name|single|num > select_where_sc ^ single',
|
239
240
|
'select_where_sc > ) > select_where_sc_rp_',
|
240
|
-
'
|
241
|
+
'select_where_sc > } > select_where_sc_re_',
|
242
|
+
'select_where_sc_re__ > as > select_from_x_as ^ as',
|
243
|
+
'select_where_sc_rp_ > } > select_where_sc_re_',
|
244
|
+
'select_where_sc_rp__ > as > select_from_x_as ^ and,or,group by,limit',
|
245
|
+
'- > and|or > select_where',
|
246
|
+
'- > group > select_group',
|
247
|
+
'- > group by > select_group_by',
|
248
|
+
'- > limit > select_where_sc_limit',
|
249
|
+
'- > } > select_where_sc_re_',
|
241
250
|
'select_where_sc_ > and|or > select_where ^ and,or,group by,limit',
|
242
251
|
'- > group > select_group',
|
243
252
|
'- > group by > select_group_by',
|
@@ -245,6 +254,7 @@ class SqlCompleter(Completer):
|
|
245
254
|
'select_group_ > by > select_group_by ^ by',
|
246
255
|
'select_group_by_ > name > select_group_by_a ^ id,x.,y.,z.',
|
247
256
|
'select_group_by_a > , > select_group_by_a_comma_',
|
257
|
+
'- > } > select_where_sc_re_',
|
248
258
|
'select_group_by_a_comma_ > name > select_group_by_a ^ id,x.,y.,z.',
|
249
259
|
'select_group_by_a_ > limit > select_where_sc_limit ^ limit',
|
250
260
|
'select_where_sc_limit_ > num > select_where_sc_limit_num ^ 1',
|
@@ -269,6 +279,7 @@ class SqlCompleter(Completer):
|
|
269
279
|
'select_x_join_y_on_a > comparison > select_x_join_y_on_a_op ^ =',
|
270
280
|
'select_x_join_y_on_a_op > name > select_x_join_y_on_a_op_b ^ id,x.,y.,z.',
|
271
281
|
'select_x_join_y_on_a_op_b > _ > select_from_x_as_x_',
|
282
|
+
'- > } > select_where_sc_re_',
|
272
283
|
|
273
284
|
|
274
285
|
' > insert > insert',
|
@@ -392,7 +403,7 @@ class SqlCompleter(Completer):
|
|
392
403
|
|
393
404
|
return (machine, completers)
|
394
405
|
|
395
|
-
def traverse_tokens(self, text: str, tokens: list[Token], state: str = '', indent=0):
|
406
|
+
def traverse_tokens(self, text: str, tokens: list[Token], state: str = '', indent=0, lp_level = 0, lp_levels_to_match: set = set()):
|
396
407
|
keywords = [
|
397
408
|
'select', 'from', 'as', 'not', 'in', 'where',
|
398
409
|
'and', 'or', 'group', 'by', 'group by', 'limit',
|
@@ -406,6 +417,20 @@ class SqlCompleter(Completer):
|
|
406
417
|
'delete'
|
407
418
|
]
|
408
419
|
|
420
|
+
def is_opening_embrace():
|
421
|
+
if f'{state} > ' + '{' in self.machine[0]:
|
422
|
+
lp_levels_to_match.add(lp_level)
|
423
|
+
return '{'
|
424
|
+
|
425
|
+
return '('
|
426
|
+
|
427
|
+
def is_closing_embrace():
|
428
|
+
if f'{state} > ' + '}' in self.machine[0] and lp_level in lp_levels_to_match:
|
429
|
+
lp_levels_to_match.remove(lp_level)
|
430
|
+
return '}'
|
431
|
+
|
432
|
+
return ')'
|
433
|
+
|
409
434
|
for token in tokens:
|
410
435
|
if self.debug:
|
411
436
|
if token.ttype == T.Whitespace:
|
@@ -422,7 +447,7 @@ class SqlCompleter(Completer):
|
|
422
447
|
# print(" " * indent + f"Token: {token.value}, Type: {token.ttype}@{token.ttype.__class__}")
|
423
448
|
|
424
449
|
if token.is_group:
|
425
|
-
state = self.traverse_tokens(text, token.tokens, state, indent + 1)
|
450
|
+
state = self.traverse_tokens(text, token.tokens, state, indent + 1, lp_level)
|
426
451
|
else:
|
427
452
|
it = ''
|
428
453
|
if (t := token.value.lower()) in keywords:
|
@@ -441,9 +466,12 @@ class SqlCompleter(Completer):
|
|
441
466
|
if token.value == ',':
|
442
467
|
it = ','
|
443
468
|
elif token.value == '(':
|
444
|
-
it =
|
469
|
+
it = is_opening_embrace()
|
470
|
+
lp_level += 1
|
445
471
|
elif token.value == ')':
|
446
|
-
|
472
|
+
lp_level -= 1
|
473
|
+
it = is_closing_embrace()
|
474
|
+
|
447
475
|
elif token.ttype == T.Operator.Comparison:
|
448
476
|
it = 'comparison'
|
449
477
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
from typing import Callable, Iterable, List, Mapping, Optional, Pattern, Union
|
2
2
|
|
3
|
-
from prompt_toolkit.completion import CompleteEvent,
|
3
|
+
from prompt_toolkit.completion import CompleteEvent, Completion, WordCompleter
|
4
4
|
from prompt_toolkit.document import Document
|
5
5
|
from prompt_toolkit.formatted_text import AnyFormattedText
|
6
6
|
|
kaqing-2.0.68/adam/version.py
DELETED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|