aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Readme.html3
-rw-r--r--src/main/javassist/bytecode/CodeIterator.java2
-rw-r--r--src/main/javassist/expr/Expr.java12
3 files changed, 14 insertions, 3 deletions
diff --git a/Readme.html b/Readme.html
index 4a5781c3..0f319d68 100644
--- a/Readme.html
+++ b/Readme.html
@@ -236,11 +236,12 @@ see javassist.Dump.
<h2>Changes</h2>
-<p>- version 2.6 in July, 2003.
+<p>- version 2.6 in August, 2003.
<ul>
<li>CtConstructor.setBody() now works for class initializers.
<li>CtNewMethod.delegator() now works for static methods.
+ <li>javassist.expr.Expr.indexOfBytecode() has been added.
</ul>
<p>- version 2.5.1 in May, 2003.
diff --git a/src/main/javassist/bytecode/CodeIterator.java b/src/main/javassist/bytecode/CodeIterator.java
index 637dfc99..40eb90d4 100644
--- a/src/main/javassist/bytecode/CodeIterator.java
+++ b/src/main/javassist/bytecode/CodeIterator.java
@@ -137,7 +137,7 @@ public class CodeIterator implements Opcode {
/**
* Returns the index of the next instruction
- * (not the next opcode).
+ * (not the operand following the current opcode).
*
* <p>Note that the index is into the byte array returned by
* <code>get().getCode()</code>.
diff --git a/src/main/javassist/expr/Expr.java b/src/main/javassist/expr/Expr.java
index b02d40e9..2764767d 100644
--- a/src/main/javassist/expr/Expr.java
+++ b/src/main/javassist/expr/Expr.java
@@ -35,7 +35,7 @@ public abstract class Expr implements Opcode {
static final String javaLangObject = "java.lang.Object";
- Expr(int pos, CodeIterator i, CtClass declaring, MethodInfo m) {
+ protected Expr(int pos, CodeIterator i, CtClass declaring, MethodInfo m) {
currentPos = pos;
iterator = i;
thisClass = declaring;
@@ -125,6 +125,16 @@ public abstract class Expr implements Opcode {
}
/**
+ * Returns the index of the bytecode corresponding to the
+ * expression.
+ * It is the index into the byte array containing the Java bytecode
+ * that implements the method.
+ */
+ public int indexOfBytecode() {
+ return currentPos;
+ }
+
+ /**
* Returns the line number of the source line containing the
* expression.
*