LibreOffice Module codemaker (master) 1
|
#include <classfile.hxx>
Public Types | |
typedef std::vector< unsignedchar >::size_type | Branch |
typedef std::vector< unsignedchar >::size_type | Position |
Public Member Functions | |
~Code () | |
void | instrAastore () |
void | instrAconstNull () |
void | instrAnewarray (rtl::OString const &type) |
void | instrAreturn () |
void | instrAthrow () |
void | instrCheckcast (rtl::OString const &type) |
void | instrDup () |
void | instrGetstatic (rtl::OString const &type, rtl::OString const &name, rtl::OString const &descriptor) |
Branch | instrIfAcmpne () |
Branch | instrIfeq () |
Branch | instrIfnull () |
void | instrInstanceof (rtl::OString const &type) |
void | instrInvokeinterface (rtl::OString const &type, rtl::OString const &name, rtl::OString const &descriptor, sal_uInt8 args) |
void | instrInvokespecial (rtl::OString const &type, rtl::OString const &name, rtl::OString const &descriptor) |
void | instrInvokestatic (rtl::OString const &type, rtl::OString const &name, rtl::OString const &descriptor) |
void | instrInvokevirtual (rtl::OString const &type, rtl::OString const &name, rtl::OString const &descriptor) |
void | instrLookupswitch (Code const *defaultBlock, std::vector< std::pair< sal_Int32, Code * > > const &blocks) |
void | instrNew (rtl::OString const &type) |
void | instrNewarray (codemaker::UnoType::Sort sort) |
void | instrPop () |
void | instrPutfield (rtl::OString const &type, rtl::OString const &name, rtl::OString const &descriptor) |
void | instrPutstatic (rtl::OString const &type, rtl::OString const &name, rtl::OString const &descriptor) |
void | instrReturn () |
void | instrSwap () |
void | instrTableswitch (Code const *defaultBlock, sal_Int32 low, std::vector< std::unique_ptr< Code > > const &blocks) |
void | loadIntegerConstant (sal_Int32 value) |
void | loadStringConstant (rtl::OString const &value) |
void | loadLocalInteger (sal_uInt16 index) |
void | loadLocalLong (sal_uInt16 index) |
void | loadLocalFloat (sal_uInt16 index) |
void | loadLocalDouble (sal_uInt16 index) |
void | loadLocalReference (sal_uInt16 index) |
void | storeLocalReference (sal_uInt16 index) |
void | branchHere (Branch branch) |
void | addException (Position start, Position end, Position handler, rtl::OString const &type) |
void | setMaxStackAndLocals (sal_uInt16 maxStack, sal_uInt16 maxLocals) |
Position | getPosition () const |
Private Member Functions | |
Code (Code const &)=delete | |
Code & | operator= (const Code &)=delete |
Code (ClassFile &classFile) | |
void | ldc (sal_uInt16 index) |
void | accessLocal (sal_uInt16 index, sal_uInt8 fastOp, sal_uInt8 normalOp) |
Private Attributes | |
ClassFile & | m_classFile |
sal_uInt16 | m_maxStack |
sal_uInt16 | m_maxLocals |
std::vector< unsigned char > | m_code |
sal_uInt16 | m_exceptionTableLength |
std::vector< unsigned char > | m_exceptionTable |
Friends | |
class | ClassFile |
Definition at line 48 of file classfile.hxx.
typedef std::vector<unsignedchar>::size_type codemaker::javamaker::ClassFile::Code::Branch |
Definition at line 50 of file classfile.hxx.
typedef std::vector<unsignedchar>::size_type codemaker::javamaker::ClassFile::Code::Position |
Definition at line 51 of file classfile.hxx.
ClassFile::Code::~Code | ( | ) |
Definition at line 111 of file classfile.cxx.
|
privatedelete |
|
explicitprivate |
Definition at line 427 of file classfile.cxx.
|
private |
Definition at line 446 of file classfile.cxx.
References index.
void ClassFile::Code::addException | ( | Position | start, |
Position | end, | ||
Position | handler, | ||
rtl::OString const & | type | ||
) |
Definition at line 406 of file classfile.cxx.
References end, SAL_MAX_UINT16, start, and type.
void ClassFile::Code::branchHere | ( | Branch | branch | ) |
Definition at line 398 of file classfile.cxx.
References n, and SAL_MAX_INT16.
ClassFile::Code::Position ClassFile::Code::getPosition | ( | ) | const |
Definition at line 423 of file classfile.cxx.
void ClassFile::Code::instrAastore | ( | ) |
Definition at line 113 of file classfile.cxx.
void ClassFile::Code::instrAconstNull | ( | ) |
Definition at line 118 of file classfile.cxx.
void ClassFile::Code::instrAnewarray | ( | rtl::OString const & | type | ) |
Definition at line 123 of file classfile.cxx.
References type.
void ClassFile::Code::instrAreturn | ( | ) |
Definition at line 129 of file classfile.cxx.
void ClassFile::Code::instrAthrow | ( | ) |
Definition at line 134 of file classfile.cxx.
void ClassFile::Code::instrCheckcast | ( | rtl::OString const & | type | ) |
Definition at line 139 of file classfile.cxx.
References type.
void ClassFile::Code::instrDup | ( | ) |
Definition at line 145 of file classfile.cxx.
void ClassFile::Code::instrGetstatic | ( | rtl::OString const & | type, |
rtl::OString const & | name, | ||
rtl::OString const & | descriptor | ||
) |
Definition at line 150 of file classfile.cxx.
ClassFile::Code::Branch ClassFile::Code::instrIfAcmpne | ( | ) |
Definition at line 159 of file classfile.cxx.
ClassFile::Code::Branch ClassFile::Code::instrIfeq | ( | ) |
Definition at line 167 of file classfile.cxx.
ClassFile::Code::Branch ClassFile::Code::instrIfnull | ( | ) |
Definition at line 175 of file classfile.cxx.
void ClassFile::Code::instrInstanceof | ( | rtl::OString const & | type | ) |
Definition at line 183 of file classfile.cxx.
References type.
void ClassFile::Code::instrInvokeinterface | ( | rtl::OString const & | type, |
rtl::OString const & | name, | ||
rtl::OString const & | descriptor, | ||
sal_uInt8 | args | ||
) |
Definition at line 189 of file classfile.cxx.
void ClassFile::Code::instrInvokespecial | ( | rtl::OString const & | type, |
rtl::OString const & | name, | ||
rtl::OString const & | descriptor | ||
) |
Definition at line 201 of file classfile.cxx.
void ClassFile::Code::instrInvokestatic | ( | rtl::OString const & | type, |
rtl::OString const & | name, | ||
rtl::OString const & | descriptor | ||
) |
Definition at line 210 of file classfile.cxx.
void ClassFile::Code::instrInvokevirtual | ( | rtl::OString const & | type, |
rtl::OString const & | name, | ||
rtl::OString const & | descriptor | ||
) |
Definition at line 219 of file classfile.cxx.
void ClassFile::Code::instrLookupswitch | ( | Code const * | defaultBlock, |
std::vector< std::pair< sal_Int32, Code * > > const & | blocks | ||
) |
Definition at line 228 of file classfile.cxx.
References i, m_code, SAL_MAX_INT32, and size.
void ClassFile::Code::instrNew | ( | rtl::OString const & | type | ) |
Definition at line 263 of file classfile.cxx.
References type.
void ClassFile::Code::instrNewarray | ( | codemaker::UnoType::Sort | sort | ) |
Definition at line 269 of file classfile.cxx.
References codemaker::UnoType::Boolean, and codemaker::UnoType::Char.
void ClassFile::Code::instrPop | ( | ) |
Definition at line 280 of file classfile.cxx.
void ClassFile::Code::instrPutfield | ( | rtl::OString const & | type, |
rtl::OString const & | name, | ||
rtl::OString const & | descriptor | ||
) |
Definition at line 285 of file classfile.cxx.
void ClassFile::Code::instrPutstatic | ( | rtl::OString const & | type, |
rtl::OString const & | name, | ||
rtl::OString const & | descriptor | ||
) |
Definition at line 294 of file classfile.cxx.
void ClassFile::Code::instrReturn | ( | ) |
Definition at line 303 of file classfile.cxx.
void ClassFile::Code::instrSwap | ( | ) |
Definition at line 308 of file classfile.cxx.
void ClassFile::Code::instrTableswitch | ( | Code const * | defaultBlock, |
sal_Int32 | low, | ||
std::vector< std::unique_ptr< Code > > const & | blocks | ||
) |
Definition at line 313 of file classfile.cxx.
|
private |
Definition at line 434 of file classfile.cxx.
References index.
void ClassFile::Code::loadIntegerConstant | ( | sal_Int32 | value | ) |
Definition at line 353 of file classfile.cxx.
References value.
void ClassFile::Code::loadLocalDouble | ( | sal_uInt16 | index | ) |
Definition at line 386 of file classfile.cxx.
References index.
void ClassFile::Code::loadLocalFloat | ( | sal_uInt16 | index | ) |
Definition at line 382 of file classfile.cxx.
References index.
void ClassFile::Code::loadLocalInteger | ( | sal_uInt16 | index | ) |
Definition at line 374 of file classfile.cxx.
References index.
void ClassFile::Code::loadLocalLong | ( | sal_uInt16 | index | ) |
Definition at line 378 of file classfile.cxx.
References index.
void ClassFile::Code::loadLocalReference | ( | sal_uInt16 | index | ) |
Definition at line 390 of file classfile.cxx.
References index.
void ClassFile::Code::loadStringConstant | ( | rtl::OString const & | value | ) |
Definition at line 370 of file classfile.cxx.
References value.
|
inline |
Definition at line 126 of file classfile.hxx.
References m_maxLocals, and m_maxStack.
void ClassFile::Code::storeLocalReference | ( | sal_uInt16 | index | ) |
Definition at line 394 of file classfile.cxx.
References index.
|
friend |
Definition at line 149 of file classfile.hxx.
|
private |
Definition at line 142 of file classfile.hxx.
|
private |
Definition at line 145 of file classfile.hxx.
Referenced by instrLookupswitch(), and instrTableswitch().
|
private |
Definition at line 147 of file classfile.hxx.
|
private |
Definition at line 146 of file classfile.hxx.
|
private |
Definition at line 144 of file classfile.hxx.
Referenced by setMaxStackAndLocals().
|
private |
Definition at line 143 of file classfile.hxx.
Referenced by setMaxStackAndLocals().