Package ghidra.python
Class PythonScriptProvider
java.lang.Object
ghidra.app.script.GhidraScriptProvider
ghidra.python.PythonScriptProvider
- All Implemented Interfaces:
ExtensionPoint
,Comparable<GhidraScriptProvider>
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
createNewScript
(ResourceFile newScript, String category) Creates a new script using the specified file.Returns a Pattern that matches block comment closings.Returns a Pattern that matches block comment openings.protected String
Return the prefix for each certification header body line if this file is subject to certification.protected String
Return the end of certification header line if this file type is subject to certification.protected String
Return the start of certification header line if this file type is subject to certification.Returns the comment character.Returns a description for this type of script.Returns the file extension for this type of script.getScriptInstance
(ResourceFile sourceFile, PrintWriter writer) Returns a GhidraScript instance for the specified source file.Methods inherited from class ghidra.app.script.GhidraScriptProvider
compareTo, deleteScript, equals, fixupName, hashCode, toString, writeBody, writeHeader
-
Constructor Details
-
PythonScriptProvider
public PythonScriptProvider()
-
-
Method Details
-
createNewScript
Description copied from class:GhidraScriptProvider
Creates a new script using the specified file.- Specified by:
createNewScript
in classGhidraScriptProvider
- Parameters:
newScript
- the new script filecategory
- the script category- Throws:
IOException
- if an error occurs writing the file
-
getBlockCommentStart
Returns a Pattern that matches block comment openings.If block comments are not supported by this provider, then this returns null.
In Python this is a triple single quote sequence, "'''".
- Overrides:
getBlockCommentStart
in classGhidraScriptProvider
- Returns:
- the Pattern for Python block comment openings
-
getBlockCommentEnd
Returns a Pattern that matches block comment closings.If block comments are not supported by this provider, then this returns null.
In Python this is a triple single quote sequence, "'''".
- Overrides:
getBlockCommentEnd
in classGhidraScriptProvider
- Returns:
- the Pattern for Python block comment openings
-
getCommentCharacter
Description copied from class:GhidraScriptProvider
Returns the comment character.For example, "//" or "#".
- Specified by:
getCommentCharacter
in classGhidraScriptProvider
- Returns:
- the comment character
-
getCertifyHeaderStart
Description copied from class:GhidraScriptProvider
Return the start of certification header line if this file type is subject to certification.- Overrides:
getCertifyHeaderStart
in classGhidraScriptProvider
- Returns:
- start of certification header or null if not supported
-
getCertificationBodyPrefix
Description copied from class:GhidraScriptProvider
Return the prefix for each certification header body line if this file is subject to certification.- Overrides:
getCertificationBodyPrefix
in classGhidraScriptProvider
- Returns:
- certification header body prefix or null if not supported
-
getCertifyHeaderEnd
Description copied from class:GhidraScriptProvider
Return the end of certification header line if this file type is subject to certification.- Overrides:
getCertifyHeaderEnd
in classGhidraScriptProvider
- Returns:
- end of certification header or null if not supported
-
getDescription
Description copied from class:GhidraScriptProvider
Returns a description for this type of script.- Specified by:
getDescription
in classGhidraScriptProvider
- Returns:
- a description for this type of script
-
getExtension
Description copied from class:GhidraScriptProvider
Returns the file extension for this type of script.For example, ".java" or ".py".
- Specified by:
getExtension
in classGhidraScriptProvider
- Returns:
- the file extension for this type of script
-
getScriptInstance
public GhidraScript getScriptInstance(ResourceFile sourceFile, PrintWriter writer) throws GhidraScriptLoadException Description copied from class:GhidraScriptProvider
Returns a GhidraScript instance for the specified source file.- Specified by:
getScriptInstance
in classGhidraScriptProvider
- Parameters:
sourceFile
- the source filewriter
- the print writer to write warning/error messages. If the error prevents success, throw an exception instead. The caller will print the error.- Returns:
- a GhidraScript instance for the specified source file
- Throws:
GhidraScriptLoadException
- when the script instance cannot be created
-