-
BriefUnitGraph
A CFG where the nodes are Unit instances, and where no edges are included to account for control flow associated with exceptions.
-
ExceptionalUnitGraph
control flow associated with exceptions is taken into account.
-
CompleteUnitGraph
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
cxf-bundle-minimal-2.3.0 | |
org.wso2.carbon.apimgt.impl-6.5.267 | |
vaadin-shared-deps-1.0.5 | |
akka-http-experimental_2.12.0-RC1-2.4.11 | |
activemq-osgi-5.14.5 | |
hazelcast-all-3.6-RC1 | |
quickfixj-all-2.1.1 | |
org.apache.servicemix.bundles.solr-solrj-8.3.1_1 | |
org.apache.servicemix.bundles.gwt-user-2.6.0_1 | |
akka-remote_2.13.0-RC2-2.5.23 |
public class Spin
{
private int a;
private String b;
protected void spin()
{
int i;
public class Example
minor version: 0
major version: 52
flags: ACC_PUBLIC, ACC_SUPER
Constant pool:
#1 = Methodref #11.#39 // Example.lambda$main$1:(II)I
#2 = Methodref #11.#40 // Example.lambda$main$0:(II)I
#3 = Methodref #12.#41 // java/lang/Object."<init>":()V
#4 = Class #42 // Addition
public class Example
minor version: 0
major version: 52
flags: ACC_PUBLIC, ACC_SUPER
Constant pool:
#1 = Methodref #8.#30 // java/lang/Object."<init>":()V
#2 = Class #31 // Addition
#3 = Methodref #2.#30 // Addition."<init>":()V
#4 = InvokeDynamic #0:#36 // #0:operation:()LOperator;
This is a walk-through example I played to understand the lambda expression at Java bytecode level better and how to desugar it.
Consider the following source code example with the lamda-expressions in class Example
:
public interface Operator{
public int operation(int a, int b);
- Statically typed language: variables have definite types, it is a compile-time error to assign a value of an incompatible type to a variable, e.g., Java
- Dynamically typed language: only check type compatiblity at runtime, e.g., JavaScript
- Mutliple Inheritance of State, Implementation, and Type
- Top-level types:
- Primitive types
- TaintBench https://taintbench.github.io
- DroidBench & ICC- Bench https://github.com/FoelliX/ReproDroid
- OWASP https://owasp.org/www-project-benchmark/
- NJR-1 Dataset https://zenodo.org/record/4839913#.YUC7np0zaiM
- Software Assurance Reference Dataset (SARD) https://samate.nist.gov/SARD/index.php
- Juliet Test Suite for Java
- Program Repair http://program-repair.org/benchmarks.html
- The method
void setRequestMethod(java.lang.String)
is declared in classjava.net.HttpURLConnection
. - The methods
void setDoInput(boolean)
andvoid connect()
are declared in classjava.net.URLConnection
.
JAVA SOURCE CODE
private void connect() throws IOException{
URL url = new URL(URL);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
JAVA SOURCE CODE
public final class R {
public static final class style {
public static final int AppBaseTheme=0x7f050000;
public static final int AppTheme=0x7f050001;
}
}
NewerOlder