| 1564 | } |
| 1565 | |
| 1566 | void asCByteCode::ExtractTryCatchInfo(asCScriptFunction *outFunc) |
| 1567 | { |
| 1568 | asASSERT(outFunc->scriptData); |
| 1569 | |
| 1570 | unsigned int pos = 0; |
| 1571 | asCByteInstruction *instr = first; |
| 1572 | while (instr) |
| 1573 | { |
| 1574 | if (instr->op == asBC_TryBlock) |
| 1575 | { |
| 1576 | asSTryCatchInfo info; |
| 1577 | info.tryPos = pos; |
| 1578 | info.catchPos = *ARG_DW(instr->arg); |
| 1579 | info.stackSize = asUINT(instr->stackSize); |
| 1580 | outFunc->scriptData->tryCatchInfo.PushLast(info); |
| 1581 | } |
| 1582 | |
| 1583 | pos += instr->size; |
| 1584 | instr = instr->next; |
| 1585 | } |
| 1586 | } |
| 1587 | |
| 1588 | int asCByteCode::GetSize() |
| 1589 | { |
no test coverage detected