Package ghidra.python
Class PythonCodeCompletionFactory
java.lang.Object
ghidra.python.PythonCodeCompletionFactory
Generates CodeCompletions from Python objects.
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic void
changeOptions
(Options options, String name, Object oldValue, Object newValue) Handle an Option change.static Object[]
getCallMethods
(org.python.core.PyObject obj) Returns the Java __call__ methods declared for a Python object.static ghidra.app.plugin.core.console.CodeCompletion
newCodeCompletion
(String description, String insertion, org.python.core.PyObject pyObj) Deprecated.static ghidra.app.plugin.core.console.CodeCompletion
newCodeCompletion
(String description, String insertion, org.python.core.PyObject pyObj, String userInput) Creates a new CodeCompletion from the given Python objects.static void
setupOptions
(PythonPlugin plugin, Options options) Sets up Python code completion Options.
-
Field Details
-
COMPLETION_LABEL
- See Also:
-
NULL_COLOR
-
FUNCTION_COLOR
-
PACKAGE_COLOR
-
CLASS_COLOR
-
METHOD_COLOR
-
CODE_COLOR
-
INSTANCE_COLOR
-
SEQUENCE_COLOR
-
MAP_COLOR
-
NUMBER_COLOR
-
SPECIAL_COLOR
-
-
Constructor Details
-
PythonCodeCompletionFactory
public PythonCodeCompletionFactory()
-
-
Method Details
-
newCodeCompletion
@Deprecated public static ghidra.app.plugin.core.console.CodeCompletion newCodeCompletion(String description, String insertion, org.python.core.PyObject pyObj) Deprecated.usenewCodeCompletion(String, String, PyObject, String)
instead, it allows creation of substituting code completionsCreates a new CodeCompletion from the given Python objects.- Parameters:
description
- description of the new CodeCompletioninsertion
- what will be inserted to make the code completepyObj
- a Python Object- Returns:
- A new CodeCompletion from the given Python objects.
-
newCodeCompletion
public static ghidra.app.plugin.core.console.CodeCompletion newCodeCompletion(String description, String insertion, org.python.core.PyObject pyObj, String userInput) Creates a new CodeCompletion from the given Python objects.- Parameters:
description
- description of the new CodeCompletioninsertion
- what will be inserted to make the code completepyObj
- a Python ObjectuserInput
- a word we want to complete, can be an empty string. It's used to determine which part (if any) of the input should be removed before the insertion of the completion- Returns:
- A new CodeCompletion from the given Python objects.
-
setupOptions
Sets up Python code completion Options.- Parameters:
plugin
- python plugin as options owneroptions
- an Options handle
-
changeOptions
Handle an Option change. This is named slightly differently because it is a static method, not an instance method. By the time we get here, we assume that the Option changed is indeed ours.- Parameters:
options
- the Options handlename
- name of the Option changedoldValue
- the old valuenewValue
- the new value
-
getCallMethods
Returns the Java __call__ methods declared for a Python object. Some Python "methods" in the new-style Python objects are actually classes in and of themselves, re-implementing __call__ methods to tell us how to call them. This returns an array of those Methods (for code completion help).- Parameters:
obj
- a PyObject- Returns:
- the Java __call__ methods declared for the Python object
-
newCodeCompletion(String, String, PyObject, String)
instead, it allows creation of substituting code completions