public class ActionPushParser {
private static PushedValue<?> parsePushedValue(final SWFBinaryParser parser, final String fieldName) throws SWFParserException {
final UINT8 type = parseUINT8(parser, 0x00006, fieldName + "::Type");
switch (type.value()) {
case 0: return new PushedString(type, SWFParserHelpers.parseString(parser, 0x00006, fieldName + "::String"));
case 1: return new PushedFloat(type, SWFParserHelpers.parseFloat(parser, 0x00006, fieldName + "::Float"));
case 2: return new PushedNull(type);
case 3: return new PushedUndefined(type);
case 4: return new PushedRegisterNumber(type, parseUINT8(parser, 0x00006, fieldName + "::RegisterNumber"));