<commit_before>#ifndef RBX_MARSHAL_HPP
#define RBX_MARSHAL_HPP

#include <iostream>
#include <sstream>

#include "prelude.hpp"

namespace rubinius {

  class Object;

  class SendSite;
  class InstructionSequence;
  class CompiledMethod;
  class String;
  class Array;
  class Bignum;
  class Float;
  class Symbol;
  class Tuple;

  class UnMarshaller {
  public:
    STATE;
    std::istream& stream;

    UnMarshaller(STATE, std::istream& stream) :
      state(state), stream(stream) { }

    Object* unmarshal();

    unsigned long get_varint(bool* done);
    unsigned long get_varint();
    Object* get_positive_varint();
    Object* get_negative_varint();
    String* get_string();
    Symbol* get_symbol();
    SendSite* get_sendsite();
    Tuple* get_tuple();

    Float* get_float();
    InstructionSequence* get_iseq();
    CompiledMethod* get_cmethod();

    class Error {
      const char* message_;

    public:
      Error(const char* msg)
        : message_(msg)
      {}

      const char* message() {
        return message_;
      }
    };
  };<commit_msg>UnMarshal's methods are private, except unmarshal().<commit_after>#ifndef RBX_MARSHAL_HPP
#define RBX_MARSHAL_HPP

#include <iostream>
#include <sstream>

#include "prelude.hpp"

namespace rubinius {

  class Object;

  class SendSite;
  class InstructionSequence;
  class CompiledMethod;
  class String;
  class Array;
  class Bignum;
  class Float;
  class Symbol;
  class Tuple;

  class UnMarshaller {
  public:
    STATE;
    std::istream& stream;

    UnMarshaller(STATE, std::istream& stream) :
      state(state), stream(stream) { }

    Object* unmarshal();

  private:
    unsigned long get_varint(bool* done);
    unsigned long get_varint();
    Object* get_positive_varint();
    Object* get_negative_varint();
    String* get_string();
    Symbol* get_symbol();
    SendSite* get_sendsite();
    Tuple* get_tuple();

    Float* get_float();
    InstructionSequence* get_iseq();
    CompiledMethod* get_cmethod();

  public:
    class Error {
      const char* message_;

    public:
      Error(const char* msg)
        : message_(msg)
      {}

      const char* message() {
        return message_;
      }
    };
  };
{'fraction_non_alphanumeric': 0.10834088848594742, 'fraction_numerical': 0.0, 'mean_word_length': 3.1407129455909946, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5781875', 'n_tokens_mistral': 751, 'n_tokens_neox': 710, 'n_words': 177}