Skip to content

Commit

Permalink
Merge pull request #2094 from MarcMil/dotnet
Browse files Browse the repository at this point in the history
Improve .NET import support
  • Loading branch information
StevenArzt authored Sep 5, 2024
2 parents a0ff207 + b425d25 commit a98b8a4
Show file tree
Hide file tree
Showing 454 changed files with 25,543 additions and 21,194 deletions.
13,643 changes: 6,634 additions & 7,009 deletions src/main/generated/protobuf/soot/dotnet/proto/ProtoAssemblyAllTypes.java

Large diffs are not rendered by default.

1,416 changes: 640 additions & 776 deletions src/main/generated/protobuf/soot/dotnet/proto/ProtoDotnetNativeHost.java

Large diffs are not rendered by default.

10,330 changes: 4,980 additions & 5,350 deletions src/main/generated/protobuf/soot/dotnet/proto/ProtoIlInstructions.java

Large diffs are not rendered by default.

2 changes: 2 additions & 0 deletions src/main/generated/sablecc/soot/jimple/parser/analysis/Analysis.java
100755 → 100644
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,7 @@ public interface Analysis extends Switch
void caseAIntegerConstant(AIntegerConstant node);
void caseAFloatConstant(AFloatConstant node);
void caseAStringConstant(AStringConstant node);
void caseABoolConstant(ABoolConstant node);
void caseAClzzConstant(AClzzConstant node);
void caseANullConstant(ANullConstant node);
void caseAAndBinop(AAndBinop node);
Expand Down Expand Up @@ -270,4 +271,5 @@ public interface Analysis extends Switch
void caseTFloatConstant(TFloatConstant node);
void caseTStringConstant(TStringConstant node);
void caseEOF(EOF node);
void caseInvalidToken(InvalidToken node);
}
12 changes: 12 additions & 0 deletions src/main/generated/sablecc/soot/jimple/parser/analysis/AnalysisAdapter.java
100755 → 100644
Original file line number Diff line number Diff line change
Expand Up @@ -830,6 +830,12 @@ public void caseAStringConstant(AStringConstant node)
defaultCase(node);
}

@Override
public void caseABoolConstant(ABoolConstant node)
{
defaultCase(node);
}

@Override
public void caseAClzzConstant(AClzzConstant node)
{
Expand Down Expand Up @@ -1616,6 +1622,12 @@ public void caseEOF(EOF node)
defaultCase(node);
}

@Override
public void caseInvalidToken(InvalidToken node)
{
defaultCase(node);
}

public void defaultCase(@SuppressWarnings("unused") Node node)
{
// do nothing
Expand Down
21 changes: 21 additions & 0 deletions src/main/generated/sablecc/soot/jimple/parser/analysis/DepthFirstAdapter.java
100755 → 100644
Original file line number Diff line number Diff line change
Expand Up @@ -3360,6 +3360,27 @@ public void caseAStringConstant(AStringConstant node)
outAStringConstant(node);
}

public void inABoolConstant(ABoolConstant node)
{
defaultIn(node);
}

public void outABoolConstant(ABoolConstant node)
{
defaultOut(node);
}

@Override
public void caseABoolConstant(ABoolConstant node)
{
inABoolConstant(node);
if(node.getBoolConstant() != null)
{
node.getBoolConstant().apply(this);
}
outABoolConstant(node);
}

public void inAClzzConstant(AClzzConstant node)
{
defaultIn(node);
Expand Down
21 changes: 21 additions & 0 deletions src/main/generated/sablecc/soot/jimple/parser/analysis/ReversedDepthFirstAdapter.java
100755 → 100644
Original file line number Diff line number Diff line change
Expand Up @@ -3374,6 +3374,27 @@ public void caseAStringConstant(AStringConstant node)
outAStringConstant(node);
}

public void inABoolConstant(ABoolConstant node)
{
defaultIn(node);
}

public void outABoolConstant(ABoolConstant node)
{
defaultOut(node);
}

@Override
public void caseABoolConstant(ABoolConstant node)
{
inABoolConstant(node);
if(node.getBoolConstant() != null)
{
node.getBoolConstant().apply(this);
}
outABoolConstant(node);
}

public void inAClzzConstant(AClzzConstant node)
{
defaultIn(node);
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
/* This file was generated by SableCC (http://www.sablecc.org/). */

package soot.jimple.parser.lexer;

import java.io.*;

@SuppressWarnings("serial")
public interface IPushbackReader
{
public int read() throws IOException;
public void unread(int c) throws IOException;
}
25 changes: 22 additions & 3 deletions src/main/generated/sablecc/soot/jimple/parser/lexer/Lexer.java
100755 → 100644
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ public class Lexer
protected Token token;
protected State state = State.INITIAL;

private PushbackReader in;
private IPushbackReader in;
private int line;
private int pos;
private boolean cr;
Expand All @@ -24,7 +24,25 @@ protected void filter() throws LexerException, IOException
// Do nothing
}

public Lexer(@SuppressWarnings("hiding") PushbackReader in)
public Lexer(@SuppressWarnings("hiding") final PushbackReader in)
{
this.in = new IPushbackReader() {

private PushbackReader pushbackReader = in;

@Override
public void unread(int c) throws IOException {
pushbackReader.unread(c);
}

@Override
public int read() throws IOException {
return pushbackReader.read();
}
};
}

public Lexer(@SuppressWarnings("hiding") IPushbackReader in)
{
this.in = in;
}
Expand Down Expand Up @@ -1182,6 +1200,7 @@ else if(c > tmp2[1])
if(this.text.length() > 0)
{
throw new LexerException(
new InvalidToken(this.text.substring(0, 1), start_line + 1, start_pos + 1),
"[" + (start_line + 1) + "," + (start_pos + 1) + "]" +
" Unknown token: " + this.text);
}
Expand Down Expand Up @@ -2202,7 +2221,7 @@ public int id()
{
DataInputStream s = new DataInputStream(
new BufferedInputStream(
Lexer.class.getResourceAsStream("/lexer.dat")));
Lexer.class.getResourceAsStream("lexer.dat")));

// read gotoTable
int length = s.readInt();
Expand Down
12 changes: 11 additions & 1 deletion src/main/generated/sablecc/soot/jimple/parser/lexer/LexerException.java
100755 → 100644
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,21 @@

package soot.jimple.parser.lexer;

import soot.jimple.parser.node.*;

@SuppressWarnings("serial")
public class LexerException extends Exception
{
public LexerException(String message)
private InvalidToken invalidToken;

public LexerException(@SuppressWarnings("hiding") InvalidToken invalidToken, String message)
{
super(message);
this.invalidToken = invalidToken;
}

public InvalidToken getToken()
{
return this.invalidToken;
}
}
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
/* This file was generated by SableCC (http://www.sablecc.org/). */

package soot.jimple.parser.node;

import soot.jimple.parser.analysis.*;

@SuppressWarnings("nls")
public final class ABoolConstant extends PConstant
{
private TBoolConstant _boolConstant_;

public ABoolConstant()
{
// Constructor
}

public ABoolConstant(
@SuppressWarnings("hiding") TBoolConstant _boolConstant_)
{
// Constructor
setBoolConstant(_boolConstant_);

}

@Override
public Object clone()
{
return new ABoolConstant(
cloneNode(this._boolConstant_));
}

@Override
public void apply(Switch sw)
{
((Analysis) sw).caseABoolConstant(this);
}

public TBoolConstant getBoolConstant()
{
return this._boolConstant_;
}

public void setBoolConstant(TBoolConstant node)
{
if(this._boolConstant_ != null)
{
this._boolConstant_.parent(null);
}

if(node != null)
{
if(node.parent() != null)
{
node.parent().removeChild(node);
}

node.parent(this);
}

this._boolConstant_ = node;
}

@Override
public String toString()
{
return ""
+ toString(this._boolConstant_);
}

@Override
void removeChild(@SuppressWarnings("unused") Node child)
{
// Remove child
if(this._boolConstant_ == child)
{
this._boolConstant_ = null;
return;
}

throw new RuntimeException("Not a child.");
}

@Override
void replaceChild(@SuppressWarnings("unused") Node oldChild, @SuppressWarnings("unused") Node newChild)
{
// Replace child
if(this._boolConstant_ == oldChild)
{
setBoolConstant((TBoolConstant) newChild);
return;
}

throw new RuntimeException("Not a child.");
}
}
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/AFile.java
100755 → 100644
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/EOF.java
100755 → 100644
Empty file.
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
/* This file was generated by SableCC (http://www.sablecc.org/). */

package soot.jimple.parser.node;

import soot.jimple.parser.analysis.*;

@SuppressWarnings("nls")
public final class InvalidToken extends Token
{
public InvalidToken(String text)
{
setText(text);
}

public InvalidToken(String text, int line, int pos)
{
setText(text);
setLine(line);
setPos(pos);
}

@Override
public Object clone()
{
return new InvalidToken(getText(), getLine(), getPos());
}

@Override
public void apply(Switch sw)
{
((Analysis) sw).caseInvalidToken(this);
}
}
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/Node.java
100755 → 100644
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/PBinop.java
100755 → 100644
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/PFile.java
100755 → 100644
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/PMember.java
100755 → 100644
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/PName.java
100755 → 100644
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/PType.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/PUnop.java
100755 → 100644
Empty file.
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/Start.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/Switch.java
100755 → 100644
Empty file.
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TAnd.java
100755 → 100644
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TByte.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TCase.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TCatch.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TChar.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TClass.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TCmp.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TCmpeq.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TCmpg.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TCmpge.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TCmpgt.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TCmpl.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TCmple.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TCmplt.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TCmpne.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TColon.java
100755 → 100644
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TComma.java
100755 → 100644
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TDiv.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TDot.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TDouble.java
100755 → 100644
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TEquals.java
100755 → 100644
Empty file.
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TFinal.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TFloat.java
100755 → 100644
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TFrom.java
100755 → 100644
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TGoto.java
100755 → 100644
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TIf.java
100755 → 100644
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TInt.java
100755 → 100644
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TLBrace.java
100755 → 100644
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TLParen.java
100755 → 100644
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TLong.java
100755 → 100644
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TMinus.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TMod.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TMult.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TNative.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TNeg.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TNew.java
100755 → 100644
Empty file.
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TNop.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TNull.java
100755 → 100644
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TOr.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TPlus.java
100755 → 100644
Empty file.
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TPublic.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TQuote.java
100755 → 100644
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TRBrace.java
100755 → 100644
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TRParen.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TRet.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TReturn.java
100755 → 100644
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TShl.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TShort.java
100755 → 100644
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TShr.java
100755 → 100644
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TStatic.java
100755 → 100644
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified src/main/generated/sablecc/soot/jimple/parser/node/TThrow.java
100755 → 100644
Empty file.
Loading

0 comments on commit a98b8a4

Please sign in to comment.