<commit_before>// props.cxx - implementation of a property list.
// Started Fall 2000 by <NAME>, <EMAIL>
// This code is released into the Public Domain.
//
// See props.html for documentation [replace with URL when available].
//
// $Id$

#include "props.hxx"

#include <algorithm>
#include <stdio.h>
#include <string.h>

#if PROPS_STANDALONE

#include <iostream>
using std::cerr;
using std::endl;
using std::find;
using std::sort;

#else

#include <simgear/compiler.h>
#include <simgear/debug/logstream.hxx>

SG_USING_STD(sort);
SG_USING_STD(find);
SG_USING_STD(vector);

#endif




////////////////////////////////////////////////////////////////////////
// Local classes.
////////////////////////////////////////////////////////////////////////

/**
 * Comparator class for sorting by index.
 */
class CompareIndices
{
public:
  int operator() (const SGPropertyNode_ptr n1, const SGPropertyNode_ptr n2) const {
    return (n1->getIndex() < n2->getIndex());
  }
};


<commit_msg>MSVC++ bug work-around from <NAME>.<commit_after>// props.cxx - implementation of a property list.
// Started Fall 2000 by <NAME>, <EMAIL>
// This code is released into the Public Domain.
//
// See props.html for documentation [replace with URL when available].
//
// $Id$

#include "props.hxx"

#include <algorithm>
#include <stdio.h>
#include <string.h>

#if PROPS_STANDALONE

#include <iostream>
using std::cerr;
using std::endl;
using std::find;
using std::sort;
using std::vector;

#else

#include <simgear/compiler.h>
#include <simgear/debug/logstream.hxx>

SG_USING_STD(sort);
SG_USING_STD(find);
SG_USING_STD(vector);

#ifdef _MSC_VER
// MSVC is buggy, and needs something strange here
SG_USING_STD(vector<SGPropertyNode_ptr>);
SG_USING_STD(vector<SGPropertyChangeListener *>);
SG_USING_STD(vector<SGPropertyNode *>);
#endif

#endif




////////////////////////////////////////////////////////////////////////
// Local classes.
////////////////////////////////////////////////////////////////////////

/**
 * Comparator class for sorting by index.
 */
class CompareIndices
{
public:
  int operator() (const SGPropertyNode_ptr n1, const SGPropertyNode_ptr n2) const {
    return (n1->getIndex() < n2->getIndex());
  }
};



{'fraction_non_alphanumeric': 0.25090415913200725, 'fraction_numerical': 0.007233273056057866, 'mean_word_length': 2.452418096723869, 'pattern_counts': {'":': 0, '<': 25, '<?xml version=': 0, '>': 27, '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': '884056', 'n_tokens_mistral': 725, 'n_tokens_neox': 685, 'n_words': 186}