Zum Inhalt
HALOWERK

Technische Prüfungen & Formate

F TD2000 DOCUMENTS 14 / python312 metaclass selection prepare setname init subclass classcreation

Recover most-derived metaclass selection and the complete modeled class creation hook order over explicit base classes. Compare the complete typed result SHA256.

POST https://detect.halowerk.com/v1/F-TD2000-DOCUMENTS-14/python312-metaclass-selection-prepare-setname-init-subclass-classcreation

Eingaben

Felder des veröffentlichten Eingabeschemas
FeldTypPflichtBeschreibung
artifactobjectJa
Vollständiges Eingabeschema anzeigen
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "artifact"
  ],
  "properties": {
    "artifact": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "pythonClass"
      ],
      "properties": {
        "pythonClass": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "data",
            "claim"
          ],
          "properties": {
            "data": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "class_name",
                "metaclasses",
                "classes",
                "bases",
                "mro_tail",
                "explicit_metaclass",
                "namespace",
                "keywords",
                "requires_classcell",
                "forward_classcell"
              ],
              "properties": {
                "class_name": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 48,
                  "pattern": "^[A-Za-z_][A-Za-z0-9_.-]*$"
                },
                "metaclasses": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "id",
                      "mro",
                      "prepare_hook",
                      "prepare_error",
                      "new_hook",
                      "new_error",
                      "init_hook",
                      "init_error"
                    ],
                    "properties": {
                      "id": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 48,
                        "pattern": "^[A-Za-z_][A-Za-z0-9_.-]*$"
                      },
                      "mro": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 48,
                          "pattern": "^[A-Za-z_][A-Za-z0-9_.-]*$"
                        },
                        "minItems": 1,
                        "maxItems": 16
                      },
                      "prepare_hook": {
                        "$ref": "#/properties/artifact/%24defs/a"
                      },
                      "prepare_error": {
                        "anyOf": [
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 64
                          }
                        ]
                      },
                      "new_hook": {
                        "$ref": "#/properties/artifact/%24defs/a"
                      },
                      "new_error": {
                        "anyOf": [
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 64
                          }
                        ]
                      },
                      "init_hook": {
                        "$ref": "#/properties/artifact/%24defs/a"
                      },
                      "init_error": {
                        "anyOf": [
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 64
                          }
                        ]
                      }
                    }
                  },
                  "minItems": 1,
                  "maxItems": 16
                },
                "classes": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "id",
                      "metaclass",
                      "mro",
                      "init_subclass"
                    ],
                    "properties": {
                      "id": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 48,
                        "pattern": "^[A-Za-z_][A-Za-z0-9_.-]*$"
                      },
                      "metaclass": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 48,
                        "pattern": "^[A-Za-z_][A-Za-z0-9_.-]*$"
                      },
                      "mro": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 48,
                          "pattern": "^[A-Za-z_][A-Za-z0-9_.-]*$"
                        },
                        "minItems": 1,
                        "maxItems": 32
                      },
                      "init_subclass": {
                        "anyOf": [
                          {
                            "type": "null"
                          },
                          {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "hook",
                              "consume",
                              "call_super",
                              "error"
                            ],
                            "properties": {
                              "hook": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 48,
                                "pattern": "^[A-Za-z_][A-Za-z0-9_.-]*$"
                              },
                              "consume": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 48,
                                  "pattern": "^[A-Za-z_][A-Za-z0-9_.-]*$"
                                },
                                "minItems": 0,
                                "maxItems": 16
                              },
                              "call_super": {
                                "type": "boolean"
                              },
                              "error": {
                                "anyOf": [
                                  {
                                    "type": "null"
                                  },
                                  {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 64
                                  }
                                ]
                              }
                            }
                          }
                        ]
                      }
                    }
                  },
                  "minItems": 1,
                  "maxItems": 32
                },
                "bases": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 48,
                    "pattern": "^[A-Za-z_][A-Za-z0-9_.-]*$"
                  },
                  "minItems": 0,
                  "maxItems": 16
                },
                "mro_tail": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 48,
                    "pattern": "^[A-Za-z_][A-Za-z0-9_.-]*$"
                  },
                  "minItems": 1,
                  "maxItems": 32
                },
                "explicit_metaclass": {
                  "$ref": "#/properties/artifact/%24defs/a"
                },
                "namespace": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "name",
                      "set_name_hook",
                      "error"
                    ],
                    "properties": {
                      "name": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 48,
                        "pattern": "^[A-Za-z_][A-Za-z0-9_.-]*$"
                      },
                      "set_name_hook": {
                        "$ref": "#/properties/artifact/%24defs/a"
                      },
                      "error": {
                        "anyOf": [
                          {
                            "type": "null"
                          },
                          {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 64
                          }
                        ]
                      }
                    }
                  },
                  "minItems": 0,
                  "maxItems": 32
                },
                "keywords": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "name",
                      "value"
                    ],
                    "properties": {
                      "name": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 48,
                        "pattern": "^[A-Za-z_][A-Za-z0-9_.-]*$"
                      },
                      "value": {
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 128
                      }
                    }
                  },
                  "minItems": 0,
                  "maxItems": 16
                },
                "requires_classcell": {
                  "type": "boolean"
                },
                "forward_classcell": {
                  "type": "boolean"
                }
              }
            },
            "claim": {
              "anyOf": [
                {
                  "type": "null"
                },
                {
                  "type": "string",
                  "minLength": 64,
                  "maxLength": 64,
                  "pattern": "^[0-9a-f]{64}$"
                }
              ]
            }
          }
        }
      },
      "$defs": {
        "a": {
          "anyOf": [
            {
              "type": "null"
            },
            {
              "type": "string",
              "minLength": 1,
              "maxLength": 48,
              "pattern": "^[A-Za-z_][A-Za-z0-9_.-]*$"
            }
          ]
        }
      }
    }
  }
}

Originalschema öffnen

Ergebnis & Dokumentation

Maschinenlesbare Dokumentation dieses Hubs

Quelle dieser Seite: der veröffentlichte HALOWERK-Katalog. Stand: 2026-11-01, 15:19 UTC.

Weitere Endpunkte dieses Hubs

Alle Endpunkte dieses Hubs →