hugr-core 0.28.0

Quantinuum's Hierarchical Unified Graph Representation
Documentation
{
  "version": "0.1.1",
  "name": "ptr",
  "types": {
    "ptr": {
      "extension": "ptr",
      "name": "ptr",
      "params": [
        {
          "tp": "Type",
          "b": "C"
        }
      ],
      "description": "Standard extension pointer type.",
      "bound": {
        "b": "Explicit",
        "bound": "C"
      }
    }
  },
  "operations": {
    "New": {
      "extension": "ptr",
      "name": "New",
      "description": "Create a new pointer from a value.",
      "signature": {
        "params": [
          {
            "tp": "Type",
            "b": "C"
          }
        ],
        "body": {
          "input": [
            {
              "t": "V",
              "i": 0,
              "b": "C"
            }
          ],
          "output": [
            {
              "t": "Opaque",
              "extension": "ptr",
              "extension_version": "0.1.1",
              "id": "ptr",
              "args": [
                {
                  "tya": "Type",
                  "ty": {
                    "t": "V",
                    "i": 0,
                    "b": "C"
                  }
                }
              ],
              "bound": "C"
            }
          ]
        }
      },
      "binary": false
    },
    "Read": {
      "extension": "ptr",
      "name": "Read",
      "description": "Read a value from a pointer.",
      "signature": {
        "params": [
          {
            "tp": "Type",
            "b": "C"
          }
        ],
        "body": {
          "input": [
            {
              "t": "Opaque",
              "extension": "ptr",
              "extension_version": "0.1.1",
              "id": "ptr",
              "args": [
                {
                  "tya": "Type",
                  "ty": {
                    "t": "V",
                    "i": 0,
                    "b": "C"
                  }
                }
              ],
              "bound": "C"
            }
          ],
          "output": [
            {
              "t": "V",
              "i": 0,
              "b": "C"
            }
          ]
        }
      },
      "binary": false
    },
    "Write": {
      "extension": "ptr",
      "name": "Write",
      "description": "Write a value to a pointer, overwriting existing value.",
      "signature": {
        "params": [
          {
            "tp": "Type",
            "b": "C"
          }
        ],
        "body": {
          "input": [
            {
              "t": "Opaque",
              "extension": "ptr",
              "extension_version": "0.1.1",
              "id": "ptr",
              "args": [
                {
                  "tya": "Type",
                  "ty": {
                    "t": "V",
                    "i": 0,
                    "b": "C"
                  }
                }
              ],
              "bound": "C"
            },
            {
              "t": "V",
              "i": 0,
              "b": "C"
            }
          ],
          "output": []
        }
      },
      "binary": false
    }
  }
}