...

Text file src/oss.terrastruct.com/d2/testdata/d2parser/TestParse/table_and_class.exp.json

Documentation: oss.terrastruct.com/d2/testdata/d2parser/TestParse

     1{
     2  "ast": {
     3    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,0:0:0-57:0:1180",
     4    "nodes": [
     5      {
     6        "map_key": {
     7          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,1:0:1-44:1:1007",
     8          "key": {
     9            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,1:0:1-1:11:12",
    10            "path": [
    11              {
    12                "unquoted_string": {
    13                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,1:0:1-1:11:12",
    14                  "value": [
    15                    {
    16                      "string": "sql_example",
    17                      "raw_string": "sql_example"
    18                    }
    19                  ]
    20                }
    21              }
    22            ]
    23          },
    24          "primary": {
    25            "unquoted_string": {
    26              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,1:13:14-1:24:25",
    27              "value": [
    28                {
    29                  "string": "sql_example",
    30                  "raw_string": "sql_example"
    31                }
    32              ]
    33            }
    34          },
    35          "value": {
    36            "map": {
    37              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,1:25:26-44:1:1007",
    38              "nodes": [
    39                {
    40                  "map_key": {
    41                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,2:2:30-11:3:311",
    42                    "key": {
    43                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,2:2:30-2:7:35",
    44                      "path": [
    45                        {
    46                          "unquoted_string": {
    47                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,2:2:30-2:7:35",
    48                            "value": [
    49                              {
    50                                "string": "board",
    51                                "raw_string": "board"
    52                              }
    53                            ]
    54                          }
    55                        }
    56                      ]
    57                    },
    58                    "primary": {},
    59                    "value": {
    60                      "map": {
    61                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,2:9:37-11:3:311",
    62                        "nodes": [
    63                          {
    64                            "map_key": {
    65                              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,3:4:43-3:20:59",
    66                              "key": {
    67                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,3:4:43-3:9:48",
    68                                "path": [
    69                                  {
    70                                    "unquoted_string": {
    71                                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,3:4:43-3:9:48",
    72                                      "value": [
    73                                        {
    74                                          "string": "shape",
    75                                          "raw_string": "shape"
    76                                        }
    77                                      ]
    78                                    }
    79                                  }
    80                                ]
    81                              },
    82                              "primary": {},
    83                              "value": {
    84                                "unquoted_string": {
    85                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,3:11:50-3:20:59",
    86                                  "value": [
    87                                    {
    88                                      "string": "sql_table",
    89                                      "raw_string": "sql_table"
    90                                    }
    91                                  ]
    92                                }
    93                              }
    94                            }
    95                          },
    96                          {
    97                            "map_key": {
    98                              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,4:4:64-4:37:97",
    99                              "key": {
   100                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,4:4:64-4:6:66",
   101                                "path": [
   102                                  {
   103                                    "unquoted_string": {
   104                                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,4:4:64-4:6:66",
   105                                      "value": [
   106                                        {
   107                                          "string": "id",
   108                                          "raw_string": "id"
   109                                        }
   110                                      ]
   111                                    }
   112                                  }
   113                                ]
   114                              },
   115                              "primary": {
   116                                "unquoted_string": {
   117                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,4:8:68-4:11:71",
   118                                  "value": [
   119                                    {
   120                                      "string": "int",
   121                                      "raw_string": "int"
   122                                    }
   123                                  ]
   124                                }
   125                              },
   126                              "value": {
   127                                "map": {
   128                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,4:12:72-4:37:97",
   129                                  "nodes": [
   130                                    {
   131                                      "map_key": {
   132                                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,4:13:73-4:36:96",
   133                                        "key": {
   134                                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,4:13:73-4:23:83",
   135                                          "path": [
   136                                            {
   137                                              "unquoted_string": {
   138                                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,4:13:73-4:23:83",
   139                                                "value": [
   140                                                  {
   141                                                    "string": "constraint",
   142                                                    "raw_string": "constraint"
   143                                                  }
   144                                                ]
   145                                              }
   146                                            }
   147                                          ]
   148                                        },
   149                                        "primary": {},
   150                                        "value": {
   151                                          "unquoted_string": {
   152                                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,4:25:85-4:36:96",
   153                                            "value": [
   154                                              {
   155                                                "string": "primary_key",
   156                                                "raw_string": "primary_key"
   157                                              }
   158                                            ]
   159                                          }
   160                                        }
   161                                      }
   162                                    }
   163                                  ]
   164                                }
   165                              }
   166                            }
   167                          },
   168                          {
   169                            "map_key": {
   170                              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,5:4:102-5:40:138",
   171                              "key": {
   172                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,5:4:102-5:9:107",
   173                                "path": [
   174                                  {
   175                                    "unquoted_string": {
   176                                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,5:4:102-5:9:107",
   177                                      "value": [
   178                                        {
   179                                          "string": "frame",
   180                                          "raw_string": "frame"
   181                                        }
   182                                      ]
   183                                    }
   184                                  }
   185                                ]
   186                              },
   187                              "primary": {
   188                                "unquoted_string": {
   189                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,5:11:109-5:14:112",
   190                                  "value": [
   191                                    {
   192                                      "string": "int",
   193                                      "raw_string": "int"
   194                                    }
   195                                  ]
   196                                }
   197                              },
   198                              "value": {
   199                                "map": {
   200                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,5:15:113-5:40:138",
   201                                  "nodes": [
   202                                    {
   203                                      "map_key": {
   204                                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,5:16:114-5:39:137",
   205                                        "key": {
   206                                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,5:16:114-5:26:124",
   207                                          "path": [
   208                                            {
   209                                              "unquoted_string": {
   210                                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,5:16:114-5:26:124",
   211                                                "value": [
   212                                                  {
   213                                                    "string": "constraint",
   214                                                    "raw_string": "constraint"
   215                                                  }
   216                                                ]
   217                                              }
   218                                            }
   219                                          ]
   220                                        },
   221                                        "primary": {},
   222                                        "value": {
   223                                          "unquoted_string": {
   224                                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,5:28:126-5:39:137",
   225                                            "value": [
   226                                              {
   227                                                "string": "foreign_key",
   228                                                "raw_string": "foreign_key"
   229                                              }
   230                                            ]
   231                                          }
   232                                        }
   233                                      }
   234                                    }
   235                                  ]
   236                                }
   237                              }
   238                            }
   239                          },
   240                          {
   241                            "map_key": {
   242                              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,6:4:143-6:42:181",
   243                              "key": {
   244                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,6:4:143-6:11:150",
   245                                "path": [
   246                                  {
   247                                    "unquoted_string": {
   248                                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,6:4:143-6:11:150",
   249                                      "value": [
   250                                        {
   251                                          "string": "diagram",
   252                                          "raw_string": "diagram"
   253                                        }
   254                                      ]
   255                                    }
   256                                  }
   257                                ]
   258                              },
   259                              "primary": {
   260                                "unquoted_string": {
   261                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,6:13:152-6:16:155",
   262                                  "value": [
   263                                    {
   264                                      "string": "int",
   265                                      "raw_string": "int"
   266                                    }
   267                                  ]
   268                                }
   269                              },
   270                              "value": {
   271                                "map": {
   272                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,6:17:156-6:42:181",
   273                                  "nodes": [
   274                                    {
   275                                      "map_key": {
   276                                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,6:18:157-6:41:180",
   277                                        "key": {
   278                                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,6:18:157-6:28:167",
   279                                          "path": [
   280                                            {
   281                                              "unquoted_string": {
   282                                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,6:18:157-6:28:167",
   283                                                "value": [
   284                                                  {
   285                                                    "string": "constraint",
   286                                                    "raw_string": "constraint"
   287                                                  }
   288                                                ]
   289                                              }
   290                                            }
   291                                          ]
   292                                        },
   293                                        "primary": {},
   294                                        "value": {
   295                                          "unquoted_string": {
   296                                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,6:30:169-6:41:180",
   297                                            "value": [
   298                                              {
   299                                                "string": "foreign_key",
   300                                                "raw_string": "foreign_key"
   301                                              }
   302                                            ]
   303                                          }
   304                                        }
   305                                      }
   306                                    }
   307                                  ]
   308                                }
   309                              }
   310                            }
   311                          },
   312                          {
   313                            "map_key": {
   314                              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,7:4:186-7:24:206",
   315                              "key": {
   316                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,7:4:186-7:17:199",
   317                                "path": [
   318                                  {
   319                                    "unquoted_string": {
   320                                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,7:4:186-7:17:199",
   321                                      "value": [
   322                                        {
   323                                          "string": "board_objects",
   324                                          "raw_string": "board_objects"
   325                                        }
   326                                      ]
   327                                    }
   328                                  }
   329                                ]
   330                              },
   331                              "primary": {},
   332                              "value": {
   333                                "unquoted_string": {
   334                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,7:19:201-7:24:206",
   335                                  "value": [
   336                                    {
   337                                      "string": "jsonb",
   338                                      "raw_string": "jsonb"
   339                                    }
   340                                  ]
   341                                }
   342                              }
   343                            }
   344                          },
   345                          {
   346                            "map_key": {
   347                              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,8:4:211-8:42:249",
   348                              "key": {
   349                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,8:4:211-8:16:223",
   350                                "path": [
   351                                  {
   352                                    "unquoted_string": {
   353                                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,8:4:211-8:16:223",
   354                                      "value": [
   355                                        {
   356                                          "string": "last_updated",
   357                                          "raw_string": "last_updated"
   358                                        }
   359                                      ]
   360                                    }
   361                                  }
   362                                ]
   363                              },
   364                              "primary": {},
   365                              "value": {
   366                                "unquoted_string": {
   367                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,8:18:225-8:42:249",
   368                                  "value": [
   369                                    {
   370                                      "string": "timestamp with time zone",
   371                                      "raw_string": "timestamp with time zone"
   372                                    }
   373                                  ]
   374                                }
   375                              }
   376                            }
   377                          },
   378                          {
   379                            "map_key": {
   380                              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,9:4:254-9:43:293",
   381                              "key": {
   382                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,9:4:254-9:17:267",
   383                                "path": [
   384                                  {
   385                                    "unquoted_string": {
   386                                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,9:4:254-9:17:267",
   387                                      "value": [
   388                                        {
   389                                          "string": "last_thumbgen",
   390                                          "raw_string": "last_thumbgen"
   391                                        }
   392                                      ]
   393                                    }
   394                                  }
   395                                ]
   396                              },
   397                              "primary": {},
   398                              "value": {
   399                                "unquoted_string": {
   400                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,9:19:269-9:43:293",
   401                                  "value": [
   402                                    {
   403                                      "string": "timestamp with time zone",
   404                                      "raw_string": "timestamp with time zone"
   405                                    }
   406                                  ]
   407                                }
   408                              }
   409                            }
   410                          },
   411                          {
   412                            "map_key": {
   413                              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,10:4:298-10:13:307",
   414                              "key": {
   415                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,10:4:298-10:7:301",
   416                                "path": [
   417                                  {
   418                                    "unquoted_string": {
   419                                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,10:4:298-10:7:301",
   420                                      "value": [
   421                                        {
   422                                          "string": "dsl",
   423                                          "raw_string": "dsl"
   424                                        }
   425                                      ]
   426                                    }
   427                                  }
   428                                ]
   429                              },
   430                              "primary": {},
   431                              "value": {
   432                                "unquoted_string": {
   433                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,10:9:303-10:13:307",
   434                                  "value": [
   435                                    {
   436                                      "string": "text",
   437                                      "raw_string": "text"
   438                                    }
   439                                  ]
   440                                }
   441                              }
   442                            }
   443                          }
   444                        ]
   445                      }
   446                    }
   447                  }
   448                },
   449                {
   450                  "comment": {
   451                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,13:2:315-13:11:324",
   452                    "value": "Normal."
   453                  }
   454                },
   455                {
   456                  "map_key": {
   457                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,14:2:327-14:30:355",
   458                    "edges": [
   459                      {
   460                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,14:2:327-14:30:355",
   461                        "src": {
   462                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,14:2:327-14:15:340",
   463                          "path": [
   464                            {
   465                              "unquoted_string": {
   466                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,14:2:327-14:7:332",
   467                                "value": [
   468                                  {
   469                                    "string": "board",
   470                                    "raw_string": "board"
   471                                  }
   472                                ]
   473                              }
   474                            },
   475                            {
   476                              "unquoted_string": {
   477                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,14:8:333-14:15:340",
   478                                "value": [
   479                                  {
   480                                    "string": "diagram",
   481                                    "raw_string": "diagram"
   482                                  }
   483                                ]
   484                              }
   485                            }
   486                          ]
   487                        },
   488                        "src_arrow": "",
   489                        "dst": {
   490                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,14:19:344-14:30:355",
   491                          "path": [
   492                            {
   493                              "unquoted_string": {
   494                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,14:19:344-14:27:352",
   495                                "value": [
   496                                  {
   497                                    "string": "diagrams",
   498                                    "raw_string": "diagrams"
   499                                  }
   500                                ]
   501                              }
   502                            },
   503                            {
   504                              "unquoted_string": {
   505                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,14:28:353-14:30:355",
   506                                "value": [
   507                                  {
   508                                    "string": "id",
   509                                    "raw_string": "id"
   510                                  }
   511                                ]
   512                              }
   513                            }
   514                          ]
   515                        },
   516                        "dst_arrow": ">"
   517                      }
   518                    ],
   519                    "primary": {},
   520                    "value": {}
   521                  }
   522                },
   523                {
   524                  "comment": {
   525                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,16:2:359-16:21:378",
   526                    "value": "Self referential."
   527                  }
   528                },
   529                {
   530                  "map_key": {
   531                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,17:2:381-17:40:419",
   532                    "edges": [
   533                      {
   534                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,17:2:381-17:40:419",
   535                        "src": {
   536                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,17:2:381-17:13:392",
   537                          "path": [
   538                            {
   539                              "unquoted_string": {
   540                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,17:2:381-17:10:389",
   541                                "value": [
   542                                  {
   543                                    "string": "diagrams",
   544                                    "raw_string": "diagrams"
   545                                  }
   546                                ]
   547                              }
   548                            },
   549                            {
   550                              "unquoted_string": {
   551                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,17:11:390-17:13:392",
   552                                "value": [
   553                                  {
   554                                    "string": "id",
   555                                    "raw_string": "id"
   556                                  }
   557                                ]
   558                              }
   559                            }
   560                          ]
   561                        },
   562                        "src_arrow": "",
   563                        "dst": {
   564                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,17:17:396-17:40:419",
   565                          "path": [
   566                            {
   567                              "unquoted_string": {
   568                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,17:17:396-17:25:404",
   569                                "value": [
   570                                  {
   571                                    "string": "diagrams",
   572                                    "raw_string": "diagrams"
   573                                  }
   574                                ]
   575                              }
   576                            },
   577                            {
   578                              "unquoted_string": {
   579                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,17:26:405-17:40:419",
   580                                "value": [
   581                                  {
   582                                    "string": "representation",
   583                                    "raw_string": "representation"
   584                                  }
   585                                ]
   586                              }
   587                            }
   588                          ]
   589                        },
   590                        "dst_arrow": ">"
   591                      }
   592                    ],
   593                    "primary": {},
   594                    "value": {}
   595                  }
   596                },
   597                {
   598                  "comment": {
   599                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,19:2:423-19:18:439",
   600                    "value": "SrcArrow test."
   601                  }
   602                },
   603                {
   604                  "map_key": {
   605                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,20:2:442-20:30:470",
   606                    "edges": [
   607                      {
   608                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,20:2:442-20:30:470",
   609                        "src": {
   610                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,20:2:442-20:13:453",
   611                          "path": [
   612                            {
   613                              "unquoted_string": {
   614                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,20:2:442-20:10:450",
   615                                "value": [
   616                                  {
   617                                    "string": "diagrams",
   618                                    "raw_string": "diagrams"
   619                                  }
   620                                ]
   621                              }
   622                            },
   623                            {
   624                              "unquoted_string": {
   625                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,20:11:451-20:13:453",
   626                                "value": [
   627                                  {
   628                                    "string": "id",
   629                                    "raw_string": "id"
   630                                  }
   631                                ]
   632                              }
   633                            }
   634                          ]
   635                        },
   636                        "src_arrow": "<",
   637                        "dst": {
   638                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,20:17:457-20:30:470",
   639                          "path": [
   640                            {
   641                              "unquoted_string": {
   642                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,20:17:457-20:22:462",
   643                                "value": [
   644                                  {
   645                                    "string": "views",
   646                                    "raw_string": "views"
   647                                  }
   648                                ]
   649                              }
   650                            },
   651                            {
   652                              "unquoted_string": {
   653                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,20:23:463-20:30:470",
   654                                "value": [
   655                                  {
   656                                    "string": "diagram",
   657                                    "raw_string": "diagram"
   658                                  }
   659                                ]
   660                              }
   661                            }
   662                          ]
   663                        },
   664                        "dst_arrow": ""
   665                      }
   666                    ],
   667                    "primary": {},
   668                    "value": {}
   669                  }
   670                },
   671                {
   672                  "map_key": {
   673                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,21:2:473-21:31:502",
   674                    "edges": [
   675                      {
   676                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,21:2:473-21:31:502",
   677                        "src": {
   678                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,21:2:473-21:13:484",
   679                          "path": [
   680                            {
   681                              "unquoted_string": {
   682                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,21:2:473-21:10:481",
   683                                "value": [
   684                                  {
   685                                    "string": "diagrams",
   686                                    "raw_string": "diagrams"
   687                                  }
   688                                ]
   689                              }
   690                            },
   691                            {
   692                              "unquoted_string": {
   693                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,21:11:482-21:13:484",
   694                                "value": [
   695                                  {
   696                                    "string": "id",
   697                                    "raw_string": "id"
   698                                  }
   699                                ]
   700                              }
   701                            }
   702                          ]
   703                        },
   704                        "src_arrow": "<",
   705                        "dst": {
   706                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,21:18:489-21:31:502",
   707                          "path": [
   708                            {
   709                              "unquoted_string": {
   710                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,21:18:489-21:23:494",
   711                                "value": [
   712                                  {
   713                                    "string": "steps",
   714                                    "raw_string": "steps"
   715                                  }
   716                                ]
   717                              }
   718                            },
   719                            {
   720                              "unquoted_string": {
   721                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,21:24:495-21:31:502",
   722                                "value": [
   723                                  {
   724                                    "string": "diagram",
   725                                    "raw_string": "diagram"
   726                                  }
   727                                ]
   728                              }
   729                            }
   730                          ]
   731                        },
   732                        "dst_arrow": ">"
   733                      }
   734                    ],
   735                    "primary": {},
   736                    "value": {}
   737                  }
   738                },
   739                {
   740                  "map_key": {
   741                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,23:2:506-27:3:621",
   742                    "key": {
   743                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,23:2:506-23:10:514",
   744                      "path": [
   745                        {
   746                          "unquoted_string": {
   747                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,23:2:506-23:10:514",
   748                            "value": [
   749                              {
   750                                "string": "diagrams",
   751                                "raw_string": "diagrams"
   752                              }
   753                            ]
   754                          }
   755                        }
   756                      ]
   757                    },
   758                    "primary": {},
   759                    "value": {
   760                      "map": {
   761                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,23:12:516-27:3:621",
   762                        "nodes": [
   763                          {
   764                            "map_key": {
   765                              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,24:4:522-24:20:538",
   766                              "key": {
   767                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,24:4:522-24:9:527",
   768                                "path": [
   769                                  {
   770                                    "unquoted_string": {
   771                                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,24:4:522-24:9:527",
   772                                      "value": [
   773                                        {
   774                                          "string": "shape",
   775                                          "raw_string": "shape"
   776                                        }
   777                                      ]
   778                                    }
   779                                  }
   780                                ]
   781                              },
   782                              "primary": {},
   783                              "value": {
   784                                "unquoted_string": {
   785                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,24:11:529-24:20:538",
   786                                  "value": [
   787                                    {
   788                                      "string": "sql_table",
   789                                      "raw_string": "sql_table"
   790                                    }
   791                                  ]
   792                                }
   793                              }
   794                            }
   795                          },
   796                          {
   797                            "map_key": {
   798                              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,25:4:543-25:44:583",
   799                              "key": {
   800                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,25:4:543-25:6:545",
   801                                "path": [
   802                                  {
   803                                    "unquoted_string": {
   804                                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,25:4:543-25:6:545",
   805                                      "value": [
   806                                        {
   807                                          "string": "id",
   808                                          "raw_string": "id"
   809                                        }
   810                                      ]
   811                                    }
   812                                  }
   813                                ]
   814                              },
   815                              "primary": {},
   816                              "value": {
   817                                "map": {
   818                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,25:8:547-25:44:583",
   819                                  "nodes": [
   820                                    {
   821                                      "map_key": {
   822                                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,25:9:548-25:43:582",
   823                                        "key": {
   824                                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,25:9:548-25:13:552",
   825                                          "path": [
   826                                            {
   827                                              "unquoted_string": {
   828                                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,25:9:548-25:13:552",
   829                                                "value": [
   830                                                  {
   831                                                    "string": "type",
   832                                                    "raw_string": "type"
   833                                                  }
   834                                                ]
   835                                              }
   836                                            }
   837                                          ]
   838                                        },
   839                                        "primary": {},
   840                                        "value": {
   841                                          "unquoted_string": {
   842                                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,25:15:554-25:43:582",
   843                                            "value": [
   844                                              {
   845                                                "string": "int, constraint: primary_key",
   846                                                "raw_string": "int, constraint: primary_key"
   847                                              }
   848                                            ]
   849                                          }
   850                                        }
   851                                      }
   852                                    }
   853                                  ]
   854                                }
   855                              }
   856                            }
   857                          },
   858                          {
   859                            "map_key": {
   860                              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,26:4:588-26:33:617",
   861                              "key": {
   862                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,26:4:588-26:18:602",
   863                                "path": [
   864                                  {
   865                                    "unquoted_string": {
   866                                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,26:4:588-26:18:602",
   867                                      "value": [
   868                                        {
   869                                          "string": "representation",
   870                                          "raw_string": "representation"
   871                                        }
   872                                      ]
   873                                    }
   874                                  }
   875                                ]
   876                              },
   877                              "primary": {},
   878                              "value": {
   879                                "map": {
   880                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,26:20:604-26:33:617",
   881                                  "nodes": [
   882                                    {
   883                                      "map_key": {
   884                                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,26:21:605-26:32:616",
   885                                        "key": {
   886                                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,26:21:605-26:25:609",
   887                                          "path": [
   888                                            {
   889                                              "unquoted_string": {
   890                                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,26:21:605-26:25:609",
   891                                                "value": [
   892                                                  {
   893                                                    "string": "type",
   894                                                    "raw_string": "type"
   895                                                  }
   896                                                ]
   897                                              }
   898                                            }
   899                                          ]
   900                                        },
   901                                        "primary": {},
   902                                        "value": {
   903                                          "unquoted_string": {
   904                                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,26:27:611-26:32:616",
   905                                            "value": [
   906                                              {
   907                                                "string": "jsonb",
   908                                                "raw_string": "jsonb"
   909                                              }
   910                                            ]
   911                                          }
   912                                        }
   913                                      }
   914                                    }
   915                                  ]
   916                                }
   917                              }
   918                            }
   919                          }
   920                        ]
   921                      }
   922                    }
   923                  }
   924                },
   925                {
   926                  "map_key": {
   927                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,29:2:625-34:3:780",
   928                    "key": {
   929                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,29:2:625-29:7:630",
   930                      "path": [
   931                        {
   932                          "unquoted_string": {
   933                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,29:2:625-29:7:630",
   934                            "value": [
   935                              {
   936                                "string": "views",
   937                                "raw_string": "views"
   938                              }
   939                            ]
   940                          }
   941                        }
   942                      ]
   943                    },
   944                    "primary": {},
   945                    "value": {
   946                      "map": {
   947                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,29:9:632-34:3:780",
   948                        "nodes": [
   949                          {
   950                            "map_key": {
   951                              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,30:4:638-30:20:654",
   952                              "key": {
   953                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,30:4:638-30:9:643",
   954                                "path": [
   955                                  {
   956                                    "unquoted_string": {
   957                                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,30:4:638-30:9:643",
   958                                      "value": [
   959                                        {
   960                                          "string": "shape",
   961                                          "raw_string": "shape"
   962                                        }
   963                                      ]
   964                                    }
   965                                  }
   966                                ]
   967                              },
   968                              "primary": {},
   969                              "value": {
   970                                "unquoted_string": {
   971                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,30:11:645-30:20:654",
   972                                  "value": [
   973                                    {
   974                                      "string": "sql_table",
   975                                      "raw_string": "sql_table"
   976                                    }
   977                                  ]
   978                                }
   979                              }
   980                            }
   981                          },
   982                          {
   983                            "map_key": {
   984                              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,31:4:659-31:44:699",
   985                              "key": {
   986                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,31:4:659-31:6:661",
   987                                "path": [
   988                                  {
   989                                    "unquoted_string": {
   990                                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,31:4:659-31:6:661",
   991                                      "value": [
   992                                        {
   993                                          "string": "id",
   994                                          "raw_string": "id"
   995                                        }
   996                                      ]
   997                                    }
   998                                  }
   999                                ]
  1000                              },
  1001                              "primary": {},
  1002                              "value": {
  1003                                "map": {
  1004                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,31:8:663-31:44:699",
  1005                                  "nodes": [
  1006                                    {
  1007                                      "map_key": {
  1008                                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,31:9:664-31:43:698",
  1009                                        "key": {
  1010                                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,31:9:664-31:13:668",
  1011                                          "path": [
  1012                                            {
  1013                                              "unquoted_string": {
  1014                                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,31:9:664-31:13:668",
  1015                                                "value": [
  1016                                                  {
  1017                                                    "string": "type",
  1018                                                    "raw_string": "type"
  1019                                                  }
  1020                                                ]
  1021                                              }
  1022                                            }
  1023                                          ]
  1024                                        },
  1025                                        "primary": {},
  1026                                        "value": {
  1027                                          "unquoted_string": {
  1028                                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,31:15:670-31:43:698",
  1029                                            "value": [
  1030                                              {
  1031                                                "string": "int, constraint: primary_key",
  1032                                                "raw_string": "int, constraint: primary_key"
  1033                                              }
  1034                                            ]
  1035                                          }
  1036                                        }
  1037                                      }
  1038                                    }
  1039                                  ]
  1040                                }
  1041                              }
  1042                            }
  1043                          },
  1044                          {
  1045                            "map_key": {
  1046                              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,32:4:704-32:33:733",
  1047                              "key": {
  1048                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,32:4:704-32:18:718",
  1049                                "path": [
  1050                                  {
  1051                                    "unquoted_string": {
  1052                                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,32:4:704-32:18:718",
  1053                                      "value": [
  1054                                        {
  1055                                          "string": "representation",
  1056                                          "raw_string": "representation"
  1057                                        }
  1058                                      ]
  1059                                    }
  1060                                  }
  1061                                ]
  1062                              },
  1063                              "primary": {},
  1064                              "value": {
  1065                                "map": {
  1066                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,32:20:720-32:33:733",
  1067                                  "nodes": [
  1068                                    {
  1069                                      "map_key": {
  1070                                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,32:21:721-32:32:732",
  1071                                        "key": {
  1072                                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,32:21:721-32:25:725",
  1073                                          "path": [
  1074                                            {
  1075                                              "unquoted_string": {
  1076                                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,32:21:721-32:25:725",
  1077                                                "value": [
  1078                                                  {
  1079                                                    "string": "type",
  1080                                                    "raw_string": "type"
  1081                                                  }
  1082                                                ]
  1083                                              }
  1084                                            }
  1085                                          ]
  1086                                        },
  1087                                        "primary": {},
  1088                                        "value": {
  1089                                          "unquoted_string": {
  1090                                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,32:27:727-32:32:732",
  1091                                            "value": [
  1092                                              {
  1093                                                "string": "jsonb",
  1094                                                "raw_string": "jsonb"
  1095                                              }
  1096                                            ]
  1097                                          }
  1098                                        }
  1099                                      }
  1100                                    }
  1101                                  ]
  1102                                }
  1103                              }
  1104                            }
  1105                          },
  1106                          {
  1107                            "map_key": {
  1108                              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,33:4:738-33:42:776",
  1109                              "key": {
  1110                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,33:4:738-33:11:745",
  1111                                "path": [
  1112                                  {
  1113                                    "unquoted_string": {
  1114                                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,33:4:738-33:11:745",
  1115                                      "value": [
  1116                                        {
  1117                                          "string": "diagram",
  1118                                          "raw_string": "diagram"
  1119                                        }
  1120                                      ]
  1121                                    }
  1122                                  }
  1123                                ]
  1124                              },
  1125                              "primary": {
  1126                                "unquoted_string": {
  1127                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,33:13:747-33:16:750",
  1128                                  "value": [
  1129                                    {
  1130                                      "string": "int",
  1131                                      "raw_string": "int"
  1132                                    }
  1133                                  ]
  1134                                }
  1135                              },
  1136                              "value": {
  1137                                "map": {
  1138                                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,33:17:751-33:42:776",
  1139                                  "nodes": [
  1140                                    {
  1141                                      "map_key": {
  1142                                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,33:18:752-33:41:775",
  1143                                        "key": {
  1144                                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,33:18:752-33:28:762",
  1145                                          "path": [
  1146                                            {
  1147                                              "unquoted_string": {
  1148                                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,33:18:752-33:28:762",
  1149                                                "value": [
  1150                                                  {
  1151                                                    "string": "constraint",
  1152                                                    "raw_string": "constraint"
  1153                                                  }
  1154                                                ]
  1155                                              }
  1156                                            }
  1157                                          ]
  1158                                        },
  1159                                        "primary": {},
  1160                                        "value": {
  1161                                          "unquoted_string": {
  1162                                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,33:30:764-33:41:775",
  1163                                            "value": [
  1164                                              {
  1165                                                "string": "foreign_key",
  1166                                                "raw_string": "foreign_key"
  1167                                              }
  1168                                            ]
  1169                                          }
  1170                                        }
  1171                                      }
  1172                                    }
  1173                                  ]
  1174                                }
  1175                              }
  1176                            }
  1177                          }
  1178                        ]
  1179                      }
  1180                    }
  1181                  }
  1182                },
  1183                {
  1184                  "comment": {
  1185                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,36:2:784-42:39:983",
  1186                    "value": "steps: {\nshape: sql_table\nid: {type: int, constraint: primary_key}\nrepresentation: {type: jsonb}\ndiagram: int {constraint: foreign_key}\n}\nUncomment to make autolayout panic:"
  1187                  }
  1188                },
  1189                {
  1190                  "map_key": {
  1191                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,43:2:986-43:21:1005",
  1192                    "edges": [
  1193                      {
  1194                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,43:2:986-43:21:1005",
  1195                        "src": {
  1196                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,43:2:986-43:6:990",
  1197                          "path": [
  1198                            {
  1199                              "unquoted_string": {
  1200                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,43:2:986-43:6:990",
  1201                                "value": [
  1202                                  {
  1203                                    "string": "meow",
  1204                                    "raw_string": "meow"
  1205                                  }
  1206                                ]
  1207                              }
  1208                            }
  1209                          ]
  1210                        },
  1211                        "src_arrow": "<",
  1212                        "dst": {
  1213                          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,43:10:994-43:21:1005",
  1214                          "path": [
  1215                            {
  1216                              "unquoted_string": {
  1217                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,43:10:994-43:18:1002",
  1218                                "value": [
  1219                                  {
  1220                                    "string": "diagrams",
  1221                                    "raw_string": "diagrams"
  1222                                  }
  1223                                ]
  1224                              }
  1225                            },
  1226                            {
  1227                              "unquoted_string": {
  1228                                "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,43:19:1003-43:21:1005",
  1229                                "value": [
  1230                                  {
  1231                                    "string": "id",
  1232                                    "raw_string": "id"
  1233                                  }
  1234                                ]
  1235                              }
  1236                            }
  1237                          ]
  1238                        },
  1239                        "dst_arrow": ""
  1240                      }
  1241                    ],
  1242                    "primary": {},
  1243                    "value": {}
  1244                  }
  1245                }
  1246              ]
  1247            }
  1248          }
  1249        }
  1250      },
  1251      {
  1252        "map_key": {
  1253          "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,46:0:1009-56:1:1179",
  1254          "key": {
  1255            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,46:0:1009-46:13:1022",
  1256            "path": [
  1257              {
  1258                "unquoted_string": {
  1259                  "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,46:0:1009-46:13:1022",
  1260                  "value": [
  1261                    {
  1262                      "string": "D2 AST Parser",
  1263                      "raw_string": "D2 AST Parser"
  1264                    }
  1265                  ]
  1266                }
  1267              }
  1268            ]
  1269          },
  1270          "primary": {},
  1271          "value": {
  1272            "map": {
  1273              "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,46:15:1024-56:1:1179",
  1274              "nodes": [
  1275                {
  1276                  "map_key": {
  1277                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,47:2:1028-47:14:1040",
  1278                    "key": {
  1279                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,47:2:1028-47:7:1033",
  1280                      "path": [
  1281                        {
  1282                          "unquoted_string": {
  1283                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,47:2:1028-47:7:1033",
  1284                            "value": [
  1285                              {
  1286                                "string": "shape",
  1287                                "raw_string": "shape"
  1288                              }
  1289                            ]
  1290                          }
  1291                        }
  1292                      ]
  1293                    },
  1294                    "primary": {},
  1295                    "value": {
  1296                      "unquoted_string": {
  1297                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,47:9:1035-47:14:1040",
  1298                        "value": [
  1299                          {
  1300                            "string": "class",
  1301                            "raw_string": "class"
  1302                          }
  1303                        ]
  1304                      }
  1305                    }
  1306                  }
  1307                },
  1308                {
  1309                  "map_key": {
  1310                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,49:2:1044-49:17:1059",
  1311                    "key": {
  1312                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,49:2:1044-49:11:1053",
  1313                      "path": [
  1314                        {
  1315                          "unquoted_string": {
  1316                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,49:2:1044-49:11:1053",
  1317                            "value": [
  1318                              {
  1319                                "string": "+prevRune",
  1320                                "raw_string": "+prevRune"
  1321                              }
  1322                            ]
  1323                          }
  1324                        }
  1325                      ]
  1326                    },
  1327                    "primary": {},
  1328                    "value": {
  1329                      "unquoted_string": {
  1330                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,49:13:1055-49:17:1059",
  1331                        "value": [
  1332                          {
  1333                            "string": "rune",
  1334                            "raw_string": "rune"
  1335                          }
  1336                        ]
  1337                      }
  1338                    }
  1339                  }
  1340                },
  1341                {
  1342                  "map_key": {
  1343                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,50:2:1062-50:17:1077",
  1344                    "key": {
  1345                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,50:2:1062-50:12:1072",
  1346                      "path": [
  1347                        {
  1348                          "unquoted_string": {
  1349                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,50:2:1062-50:12:1072",
  1350                            "value": [
  1351                              {
  1352                                "string": "prevColumn",
  1353                                "raw_string": "prevColumn"
  1354                              }
  1355                            ]
  1356                          }
  1357                        }
  1358                      ]
  1359                    },
  1360                    "primary": {},
  1361                    "value": {
  1362                      "unquoted_string": {
  1363                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,50:14:1074-50:17:1077",
  1364                        "value": [
  1365                          {
  1366                            "string": "int",
  1367                            "raw_string": "int"
  1368                          }
  1369                        ]
  1370                      }
  1371                    }
  1372                  }
  1373                },
  1374                {
  1375                  "map_key": {
  1376                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,52:2:1081-52:44:1123",
  1377                    "key": {
  1378                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,52:2:1081-52:29:1108",
  1379                      "path": [
  1380                        {
  1381                          "unquoted_string": {
  1382                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,52:2:1081-52:29:1108",
  1383                            "value": [
  1384                              {
  1385                                "string": "+eatSpace(eatNewlines bool)",
  1386                                "raw_string": "+eatSpace(eatNewlines bool)"
  1387                              }
  1388                            ]
  1389                          }
  1390                        }
  1391                      ]
  1392                    },
  1393                    "primary": {},
  1394                    "value": {
  1395                      "unquoted_string": {
  1396                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,52:31:1110-52:44:1123",
  1397                        "value": [
  1398                          {
  1399                            "string": "(rune, error)",
  1400                            "raw_string": "(rune, error)"
  1401                          }
  1402                        ]
  1403                      }
  1404                    }
  1405                  }
  1406                },
  1407                {
  1408                  "map_key": {
  1409                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,53:2:1126-53:14:1138",
  1410                    "key": {
  1411                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,53:2:1126-53:14:1138",
  1412                      "path": [
  1413                        {
  1414                          "unquoted_string": {
  1415                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,53:2:1126-53:14:1138",
  1416                            "value": [
  1417                              {
  1418                                "string": "unreadRune()",
  1419                                "raw_string": "unreadRune()"
  1420                              }
  1421                            ]
  1422                          }
  1423                        }
  1424                      ]
  1425                    },
  1426                    "primary": {},
  1427                    "value": {}
  1428                  }
  1429                },
  1430                {
  1431                  "map_key": {
  1432                    "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,55:2:1142-55:37:1177",
  1433                    "key": {
  1434                      "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,55:2:1142-55:19:1159",
  1435                      "path": [
  1436                        {
  1437                          "unquoted_string": {
  1438                            "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,55:2:1142-55:19:1159",
  1439                            "value": [
  1440                              {
  1441                                "string": "#scanKey(r rune)",
  1442                                "raw_string": "\\#scanKey(r rune)"
  1443                              }
  1444                            ]
  1445                          }
  1446                        }
  1447                      ]
  1448                    },
  1449                    "primary": {},
  1450                    "value": {
  1451                      "unquoted_string": {
  1452                        "range": "d2/testdata/d2parser/TestParse/table_and_class.d2,55:21:1161-55:37:1177",
  1453                        "value": [
  1454                          {
  1455                            "string": "(k Key, _ error)",
  1456                            "raw_string": "(k Key, _ error)"
  1457                          }
  1458                        ]
  1459                      }
  1460                    }
  1461                  }
  1462                }
  1463              ]
  1464            }
  1465          }
  1466        }
  1467      }
  1468    ]
  1469  },
  1470  "err": null
  1471}

View as plain text