<commit_before>/*
 * BuiltinClasses.h
 * 
 * This file is part of the "XieXie 2.0 Project" (Copyright (c) 2014 by <NAME>)
 * See "LICENSE.txt" for license information.
 */

#ifndef __XX_AST_BUILTIN_CLASSES_H__
#define __XX_AST_BUILTIN_CLASSES_H__


#include <string>


namespace AbstractSyntaxTrees
{

namespace BuiltinClasses
{


//! Structure for class run-time type information (RTTI).
struct ClassRTTI
{
    unsigned int    typeID;
    unsigned int    instanceSize;
    std::string     name;

    std::string GetVtableAddr() const
    {
        return name + ".vtable";
    }
};

static const ClassRTTI Object      { 0, 12, "Object"     };
static const ClassRTTI String      { 1, 24, "String"     };
static const ClassRTTI Array       { 2, 24, "Array"      };
static const ClassRTTI PrimArray   { 3, 24, "PrimArray"  };
static const ClassRTTI BoolArray   { 4, 24, "BoolArray"  };
static const ClassRTTI Buffer      { 5, 24, "Buffer"     };
static const ClassRTTI Intrinsics  { 6, 12, "Intrinsics" };

//! Offset (in bytes) of the member "buffer" in the "Array" class.
static const int Array_Offset_buffer = 20;


} // /namespace BuiltinClasses

} // /namespace AbstractSyntaxTrees


#endif



// ================================================================================<commit_msg>Added "Math" class to "BuiltinClasses.h" file.<commit_after>/*
 * BuiltinClasses.h
 * 
 * This file is part of the "XieXie 2.0 Project" (Copyright (c) 2014 by <NAME>)
 * See "LICENSE.txt" for license information.
 */

#ifndef __XX_AST_BUILTIN_CLASSES_H__
#define __XX_AST_BUILTIN_CLASSES_H__


#include <string>


namespace AbstractSyntaxTrees
{

namespace BuiltinClasses
{


//! Structure for class run-time type information (RTTI).
struct ClassRTTI
{
    unsigned int    typeID;
    unsigned int    instanceSize;
    std::string     name;

    std::string GetVtableAddr() const
    {
        return name + ".vtable";
    }
};

static const ClassRTTI Object      { 0, 12, "Object"     };
static const ClassRTTI String      { 1, 24, "String"     };
static const ClassRTTI Array       { 2, 24, "Array"      };
static const ClassRTTI PrimArray   { 3, 24, "PrimArray"  };
static const ClassRTTI BoolArray   { 4, 24, "BoolArray"  };
static const ClassRTTI Buffer      { 5, 24, "Buffer"     };
static const ClassRTTI Intrinsics  { 6, 12, "Intrinsics" };
static const ClassRTTI Math        { 7, 12, "Math"       };

//! Offset (in bytes) of the member "buffer" in the "Array" class.
static const int Array_Offset_buffer = 20;


} // /namespace BuiltinClasses

} // /namespace AbstractSyntaxTrees


#endif



// ================================================================================
{'fraction_non_alphanumeric': 0.1617482256257004, 'fraction_numerical': 0.022786701531565184, 'mean_word_length': 3.3615635179153096, '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': '1366682', 'n_tokens_mistral': 921, 'n_tokens_neox': 830, 'n_words': 260}