{"size": 777, "ext": "scrbl", "max_stars_repo_path": "configs/templates/constants.scrbl", "max_stars_repo_name": "eutro/racket-raylib", "max_stars_repo_stars_event_min_datetime": null, "max_stars_repo_stars_event_max_datetime": null, "max_issues_repo_path": "configs/templates/constants.scrbl", "max_issues_repo_name": "eutro/racket-raylib", "max_issues_repo_issues_event_min_datetime": null, "max_issues_repo_issues_event_max_datetime": null, "max_forks_repo_path": "configs/templates/constants.scrbl", "max_forks_repo_name": "eutro/racket-raylib", "max_forks_repo_forks_event_min_datetime": null, "max_forks_repo_forks_event_max_datetime": null}
{"max_stars_count": null, "max_issues_count": null, "max_forks_count": null, "avg_line_length": 25.064516129, "max_line_length": 73, "alphanum_fraction": 0.6422136422}
#lang scribble/text

@(require racket/match
          racket/format
          raylib/codegen/objects
          "common.rkt")
@(provide generate-constants)

@(define (generate-constants
          constants-parsed
          #:module this-mod
          #:structs-module structs-mod)
@list{
#lang scribble/manual

@"@"(require (for-label @|this-mod| @|structs-mod| racket/base))

@"@"title{Constants}

@"@"table-of-contents[]

@"@"defmodule[@|this-mod|]
@splice{
@(for/list ([parsed-constant (in-list constants-parsed)])
   (match-define (api-constant name description _ _) parsed-constant)
   (define-values (type value) (constant-type-and-value parsed-constant))
   (when value
@list{@(void)
@"@"defthing[@|name| @|type| #:value @|value| @(~s (or description ""))]
@(void)}))}})
