<commit_before>#include "render/RenderState.h"

RenderState::Ptr RenderState::Create()
{
	return std::make_shared<RenderState>(private_struct());
}

RenderState::Ptr RenderState::Create(Matrix4 newModel, 
								Matrix4 newView, 
								Matrix4 newProj)
{
	return std::make_shared<RenderState>(private_struct(), newModel, newView, newProj);
}

RenderStateStack::Ptr RenderStateStack::Create()
{
	return std::make_shared<RenderStateStack>(private_struct());
}

void RenderStateStack::Push() 
{
	RenderState::Ptr current = stack.back();
	stack.push_back(RenderState::Create(current->model, current->view, current->projection));
}

// Drop the current state
void RenderStateStack::Pop() 
{
	stack.pop_back();
}

// Remove all states to a default
void RenderStateStack::Reset()
{
	stack.empty();
	stack.push_back(RenderState::Create());
}

RenderState::Ptr RenderStateStack::State() 
{ 
	return stack.back(); 
}<commit_msg>M Fixed issue where RenderState was never being cleared<commit_after>#include "render/RenderState.h"

RenderState::Ptr RenderState::Create()
{
	return std::make_shared<RenderState>(private_struct());
}

RenderState::Ptr RenderState::Create(Matrix4 newModel, 
								Matrix4 newView, 
								Matrix4 newProj)
{
	return std::make_shared<RenderState>(private_struct(), newModel, newView, newProj);
}

RenderStateStack::Ptr RenderStateStack::Create()
{
	return std::make_shared<RenderStateStack>(private_struct());
}

void RenderStateStack::Push() 
{
	RenderState::Ptr current = stack.back();
	stack.push_back(RenderState::Create(current->model, current->view, current->projection));
}

// Drop the current state
void RenderStateStack::Pop() 
{
	stack.pop_back();
}

// Remove all states to a default
void RenderStateStack::Reset()
{
	stack.clear();
	stack.push_back(RenderState::Create());
}

RenderState::Ptr RenderStateStack::State() 
{ 
	return stack.back(); 
}
{'fraction_non_alphanumeric': 0.1454352441613588, 'fraction_numerical': 0.0031847133757961785, 'mean_word_length': 6.50996015936255, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 15, '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': '6861745', 'n_tokens_mistral': 623, 'n_tokens_neox': 605, 'n_words': 110}