class TestConsole extends Console[Project]
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- TestConsole
- Console
- ScriptManager
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- Protected
Instance Constructors
- new TestConsole(workspaceDir: String)
Type Members
- implicit class CpgScriptRunner extends AnyRef
- Definition Classes
- ScriptManager
- implicit class ItExtend[X] extends AnyRef
- Definition Classes
- Console
- class MyImportCode[T <: Project] extends ImportCode[T]
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def _runAnalyzer(overlayCreators: LayerCreator*): Cpg
- Definition Classes
- Console
- def applyDefaultOverlays(cpg: Cpg): Cpg
- Definition Classes
- Console
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def close: Option[Project]
- Definition Classes
- Console
- def close(name: String): Option[Project]
- Definition Classes
- Console
- Annotations
- @Doc("Close project by name", scala.Predef.augmentString("|Close project. Resources are freed but the project remains on disk.\n |The project remains active, that is, calling `cpg` now raises an\n |exception. A different project can now be activated using `open`.\n |").stripMargin, "close(projectName)")
- def config: ConsoleConfig
- Definition Classes
- TestConsole → Console
- def console: Console[Project]
- Definition Classes
- Console
- implicit def cpg: Cpg
- Definition Classes
- Console
- Annotations
- @Doc("CPG of the active project", scala.Predef.augmentString("\n |Upon importing code, a project is created that holds\n |an intermediate representation called `Code Property Graph`. This\n |graph is a composition of low-level program representations such\n |as abstract syntax trees and control flow graphs, but it can be arbitrarily\n |extended to hold any information relevant in your audit, information\n |about HTTP entry points, IO routines, information flows, or locations\n |of vulnerable code. Think of Ocular and Joern as a CPG editors.\n |\n |In practice, `cpg` is the root object of the query language, that is, all\n |query language constructs can be invoked starting from `cpg`. For example,\n |`cpg.method.l` lists all methods, while `cpg.finding.l` lists all findings\n |of potentially vulnerable code.\n |").stripMargin, "cpg.method.l")
- def cpgs: Iterator[Cpg]
- Definition Classes
- Console
- def defaultProjectNameIfEmpty(name: String): Option[String]
- Attributes
- protected
- Definition Classes
- Console
- def delete: Option[Unit]
- Definition Classes
- Console
- def delete(name: String): Option[Unit]
- Definition Classes
- Console
- Annotations
- @Doc("Close and remove project from disk", "", "delete(projectName)")
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def fixProjectNameAndComplainOnFix(name: String): String
- Definition Classes
- Console
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def importCode: MyImportCode[Project]
- Definition Classes
- TestConsole → Console
- def importCpg(inputPath: String, projectName: String): Option[Cpg]
- Definition Classes
- Console
- Annotations
- @Doc("Create new project from existing CPG", scala.Predef.augmentString("\n |importCpg(<inputPath>, [projectName])\n |\n |Import an existing CPG. The CPG is stored as part\n |of a new project and blanks are filled in by analyzing the CPG.\n |If we find that default overlays have not been applied, these\n |are applied to the CPG after loading it.\n |\n |Parameters:\n |\n |inputPath: path where the existing CPG (in overflowdb format)\n |is stored\n |\n |projectName: name of the new project. If this parameter\n |is omitted, the path is derived from `inputPath`\n |").stripMargin, "importCpg(\"cpg.bin.zip\")")
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def open: Option[Project]
- Definition Classes
- Console
- def open(name: String): Option[Project]
- Definition Classes
- Console
- Annotations
- @Doc("Open project", scala.Predef.augmentString("\n |open([projectName])\n |\n |Opens the project named `name` and make it the active project.\n |If `name` is not provided, the active project is opened. If `name`\n |is a path, the project name is derived from and a deprecation\n |warning is printed.\n |\n |Upon completion of this operation, the CPG stored in this project\n |can be queried via `cpg`. Returns an optional reference to the\n |project, which is empty on error.\n |").stripMargin, "open(\"projectName\")")
- def project: Project
- Definition Classes
- Console
- Annotations
- @Doc("Currently active project", "", "project")
- def reload(name: String): Option[Project]
- Definition Classes
- Console
- def report(string: String): Unit
- Definition Classes
- Console
- def runCreator(creator: LayerCreator, overlayDirName: Option[String]): Unit
- Attributes
- protected
- Definition Classes
- Console
- def runScript(scriptName: String, parameters: Map[String, String], cpg: Cpg): Any
- Definition Classes
- ScriptManager
- def runScript(scriptName: String, parameters: Map[String, String], cpgFileName: String): Any
- Definition Classes
- ScriptManager
- def save: List[Project]
- Definition Classes
- Console
- Annotations
- @Doc("Write all changes to disk", scala.Predef.augmentString("\n |Close and reopen all loaded CPGs. This ensures\n |that changes have been flushed to disk.\n |\n |Returns list of affected projects\n |").stripMargin, "save")
- def scripts(): List[ScriptCollections]
- Definition Classes
- ScriptManager
- def switchWorkspace(pathName: String): Unit
- Definition Classes
- Console
- Annotations
- @Doc("Close current workspace and open a different one", scala.Predef.augmentString(" | By default, the workspace in $INSTALL_DIR/workspace is used.\n | This method allows specifying a different workspace directory\n | via the `pathName` parameter.\n | Before changing the workspace, the current workspace will be\n | closed, saving any unsaved changes.\n | If `pathName` points to a non-existing directory, then a new\n | workspace is first created.\n |").stripMargin, help.this.Doc.<init>$default$3)
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def undo: File
- Definition Classes
- Console
- Annotations
- @Doc("undo effects of analyzer", scala.Predef.augmentString("|Undo the last change, that is, unapply the last\n |overlay applied to the active project.\n |").stripMargin, "undo")
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- def withScriptFile[T](scriptName: String)(f: (File) => IO[T]): IO[T]
- Attributes
- protected
- Definition Classes
- ScriptManager
- def workspace: WorkspaceManager[Project]
- Definition Classes
- Console
- Annotations
- @Doc("Access to the workspace directory", scala.Predef.augmentString("\n |All auditing projects are stored in a workspace directory, and `workspace`\n |provides programmatic access to this directory. Entering `workspace` provides\n |a list of all projects, indicating which code the project makes accessible,\n |whether the project is open, and which analyzers have been run to produce it.\n |Multiple projects can be open at any given time, however, only one project\n |can be active. Queries and edit-operations are executed on the active project\n |only.\n |\n |Operations\n |\n |----------\n |\n |`workspace` provides low-level access to the workspace directory. In most cases,\n |it is a better idea to use higher-level operations such as `importCode`, `open`,\n |`close`, and `delete`, which make use of workspace operations internally.\n |\n |* workspace.open([name]): open project by name and make it the active project.\n | If `name` is omitted, the last project in the workspace list is opened. If\n | the project is already open, this has the same effect as `workspace.setActiveProject([name])`\n |\n |* workspace.close([name]): close project by name. Does not remove the project.\n |\n |* workspace.remove([name]): close and remove project by name.\n |\n |* workspace.reset: create a fresh workspace directory, deleting the current\n |workspace directory\n |\n |").stripMargin, "workspace")
- var workspaceManager: WorkspaceManager[Project]
- Attributes
- protected
- Definition Classes
- Console
- def workspacePathName: String
- Attributes
- protected
- Definition Classes
- Console
- implicit object ConsoleImageViewer extends ImageViewer
- Definition Classes
- Console