<commit_before>﻿JSIL.MakeClass("System.Object", "System.Reflection.Assembly", true, [], function ($) {
  $.RawMethod(false, ".ctor", function (publicInterface, fullName) {
    JSIL.SetValueProperty(this, "__PublicInterface__", publicInterface);
    JSIL.SetValueProperty(this, "__FullName__", fullName);
  });

  $.Method({ Static: true, Public: true }, "op_Equality",
    (new JSIL.MethodSignature($.Boolean, [$.Type, $.Type], [])),
    function op_Equality(left, right) {
      return left === right;
    }
  );

  $.Method({ Static: true, Public: true }, "op_Inequality",
    (new JSIL.MethodSignature($.Boolean, [$.Type, $.Type], [])),
    function op_Inequality(left, right) {
      return left !== right;
    }
  );

  $.Method({ Static: false, Public: true }, "get_CodeBase",
    (new JSIL.MethodSignature($.String, [], [])),
    function get_CodeBase() {
      // FIXME
      return "CodeBase";
    }
  );

  $.Method({ Static: false, Public: true }, "get_FullName",
    (new JSIL.MethodSignature($.String, [], [])),
    function get_FullName() {
      return this.__FullName__;
    }
  );

  $.Method({ Static: false, Public: true }, "get_Location",
    (new JSIL.MethodSignature($.String, [], [])),
    function get_Location() {
      // FIXME
      return "Location";
    }
  );

  $.Method({ Static: false, Public: true }, "GetName",
    (new JSIL.MethodSignature($jsilcore.TypeRef("System.Reflection.AssemblyName"), [], [])),
    function GetName() {
      if (!this._assemblyName)
        this._assemblyName = new System.Reflection.AssemblyName(this.__FullName__);

      return this._assemblyName;
    }
  );

  $.Method({ Static: false, Public: true }, "GetType",
    (new JSIL.MethodSignature($jsilcore.TypeRef("System.Type"), [$.String], [])),
    function GetType(name) {
      return JSIL.GetTypeFromAssembly(this, name, null, false);
    }
  );

  $.Method({ Static: false, Public: true }, "GetType",
    (new JSIL.MethodSignature($jsilcore.TypeRef("System.Type"), [$.String, $.Boolean], [])),
    function GetType(name, throwOnError) {
      return JSIL.GetTypeFromAssembly(this, name, null, throwOnError);
    }
  );

  $.Method({ Static: false, Public: true }, "GetType",
    (new JSIL.MethodSignature($jsilcore.TypeRef("System.Type"), [
          $.String, $.Boolean,
          $.Boolean<commit_msg>Assembly.Load implemented.<commit_after>﻿JSIL.MakeClass("System.Object", "System.Reflection.Assembly", true, [], function ($) {
  $.RawMethod(false, ".ctor", function (publicInterface, fullName) {
    JSIL.SetValueProperty(this, "__PublicInterface__", publicInterface);
    JSIL.SetValueProperty(this, "__FullName__", fullName);
  });

  $.Method({ Static: true, Public: true }, "op_Equality",
    (new JSIL.MethodSignature($.Boolean, [$.Type, $.Type], [])),
    function op_Equality(left, right) {
      return left === right;
    }
  );

  $.Method({ Static: true, Public: true }, "op_Inequality",
    (new JSIL.MethodSignature($.Boolean, [$.Type, $.Type], [])),
    function op_Inequality(left, right) {
      return left !== right;
    }
  );

  $.Method({ Static: false, Public: true }, "get_CodeBase",
    (new JSIL.MethodSignature($.String, [], [])),
    function get_CodeBase() {
      // FIXME
      return "CodeBase";
    }
  );

  $.Method({ Static: false, Public: true }, "get_FullName",
    (new JSIL.MethodSignature($.String, [], [])),
    function get_FullName() {
      return this.__FullName__;
    }
  );

  $.Method({ Static: false, Public: true }, "get_Location",
    (new JSIL.MethodSignature($.String, [], [])),
    function get_Location() {
      // FIXME
      return "Location";
    }
  );

  $.Method({ Static: false, Public: true }, "GetName",
    (new JSIL.MethodSignature($jsilcore.TypeRef("System.Reflection.AssemblyName"), [], [])),
    function GetName() {
      if (!this._assemblyName)
        this._assemblyName = new System.Reflection.AssemblyName(this.__FullName__);

      return this._assemblyName;
    }
  );

  $.Method({ Static: false, Public: true }, "GetType",
    (new JSIL.MethodSignature($jsilcore.TypeRef("System.Type"), [$.String], [])),
    function GetType(name) {
      return JSIL.GetTypeFromAssembly(this, name, null, false);
    }
  );

  $.Method({ Static: false, Public: true }, "GetType",
    (new JSIL.MethodSignature($jsilcore.TypeRef("System.Type"), [$.String, $.Boolean], [])),
    function GetType(name, throwOnError) {
      return JSIL.GetTypeFromAssembly(this, name, null, throwOnError);
    }
  );

  $.Method({ Static: true, Public: true }, "Load",
    (new JSIL.MethodSignature($jsilcore.TypeRef("System.Reflection.Assembly"), [$.String], [])),
    function Load(assemblyName) {
      return JSIL.GetAssembly(assemblyName).__Assembly__;
    }
  );

  $.Method({ Static: false, Public: true }, "GetType",
    (new JSIL.MethodSignature($jsilcore.TypeRef("System.Type"), [
          $.String, $.Boolean,
          $.Boolean
{'fraction_non_alphanumeric': 0.18298392021168328, 'fraction_numerical': 0.0, 'mean_word_length': 3.5373961218836567, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, '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': '4444271', 'n_tokens_mistral': 1573, 'n_tokens_neox': 1542, 'n_words': 307}