<commit_before><?xml version="1.0"?>

<typesystem package="SignOn">
  <load-typesystem name="typesystem_templates.xml" generate="no" />
  <load-typesystem name="typesystem_core.xml" generate="no" />

  <namespace-type name="SignOn" generate="no">

    <enum-type name="SignonUiPolicy"/>

    <object-type name="Error">
      <enum-type name="ErrorType" />
    </object-type>

    <object-type name="AuthService">
      <enum-type name="ServiceError"/>
    </object-type>
    
    <object-type name="AuthSession">
      <enum-type name="AuthSessionError"/>
      <enum-type name="AuthSessionState"/>
    </object-type>


    <object-type name="Identity">
      <enum-type name="IdentityError"/>

      <!-- Really we are returning SignOn::AuthSession* -->
      <add-function signature="createSession(const QString&amp;)" return-type="SignOn::AuthSession">
        <inject-code>
	  %BEGIN_ALLOW_THREADS
	  QPointer&lt;%RETURN_TYPE&gt; %0 = %CPPSELF.%FUNCTION_NAME(%1);
	  %END_ALLOW_THREADS
	  if (!%0.isNull()) {
	      %PYARG_0 = %CONVERTTOPYTHON[%RETURN_TYPE*](%0.data());
	  }
        </inject-code>
      </add-function>

    </object-type>

    <object-type name="IdentityInfo">
      <enum-type name="CredentialsType"/>
    </object-type>

    <object-type name="SessionData">
      <modify-function signature="operator+=(SignOn::SessionData)" remove="all"/>
    </object-type>

  </namespace-type>
  
  <!-- Local warnings -->
  <suppress-warning text="enum 'QXmlStreamReader::ReadElementTextBehaviour' does not have a type entry or is not an enum"/>
  <suppress-warning text="'QDataStream::FloatingPointPrecision' does not have a type entry or is not an enum"/>
  <suppress-warning text="Unable to decide type of property: 'QEasingCurve' in class 'QTimeLine'"/>
  
  <!-- Generic QtObject warnings -->
  <suppress-warning text="enum 'Qt::*"/>
  <suppress-warning text="signature 'operator+(QByteArray,QString)' for function modification in 'QByteArray' not found.*"/>
  <suppress-warning text="signature 'operator+=(QVector)' for function modification in 'QXmlStreamAttributes' not found.*"/>
  <suppress-warning text="signature 'operator+(QByteArray,const char*)' for function modification in 'QByteArray' not found.*"/>
</typesystem>

<commit_msg>Use define SessionData as value-type object<commit_after><?xml version="1.0"?>

<typesystem package="SignOn">
  <load-typesystem name="typesystem_templates.xml" generate="no" />
  <load-typesystem name="typesystem_core.xml" generate="no" />

  <namespace-type name="SignOn" generate="no">

    <enum-type name="SignonUiPolicy"/>

    <object-type name="Error">
      <enum-type name="ErrorType" />
    </object-type>

    <object-type name="AuthService">
      <enum-type name="ServiceError"/>
    </object-type>
    
    <object-type name="AuthSession">
      <enum-type name="AuthSessionError"/>
      <enum-type name="AuthSessionState"/>
    </object-type>


    <object-type name="Identity">
      <enum-type name="IdentityError"/>

      <!-- Really we are returning SignOn::AuthSession* -->
      <add-function signature="createSession(const QString&amp;)" return-type="SignOn::AuthSession">
        <inject-code>
	  %BEGIN_ALLOW_THREADS
	  QPointer&lt;%RETURN_TYPE&gt; %0 = %CPPSELF.%FUNCTION_NAME(%1);
	  %END_ALLOW_THREADS
	  if (!%0.isNull()) {
	      %PYARG_0 = %CONVERTTOPYTHON[%RETURN_TYPE*](%0.data());
	  }
        </inject-code>
      </add-function>

    </object-type>

    <object-type name="IdentityInfo">
      <enum-type name="CredentialsType"/>
    </object-type>

    <value-type name="SessionData">
      <modify-function signature="operator+=(SignOn::SessionData)" remove="all"/>
    </value-type>

  </namespace-type>
  
  <!-- Local warnings -->
  <suppress-warning text="enum 'QXmlStreamReader::ReadElementTextBehaviour' does not have a type entry or is not an enum"/>
  <suppress-warning text="'QDataStream::FloatingPointPrecision' does not have a type entry or is not an enum"/>
  <suppress-warning text="Unable to decide type of property: 'QEasingCurve' in class 'QTimeLine'"/>
  
  <!-- Generic QtObject warnings -->
  <suppress-warning text="enum 'Qt::*"/>
  <suppress-warning text="signature 'operator+(QByteArray,QString)' for function modification in 'QByteArray' not found.*"/>
  <suppress-warning text="signature 'operator+=(QVector)' for function modification in 'QXmlStreamAttributes' not found.*"/>
  <suppress-warning text="signature 'operator+(QByteArray,const char*)' for function modification in 'QByteArray' not found.*"/>
</typesystem>


{'fraction_non_alphanumeric': 0.1613826508146191, 'fraction_numerical': 0.0030823425803610744, 'mean_word_length': 4.064659977703456, 'pattern_counts': {'":': 0, '<': 85, '<?xml version=': 2, '>': 85, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 6}, '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': '638629', 'n_tokens_mistral': 1429, 'n_tokens_neox': 1387, 'n_words': 301}