# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# NO CHECKED-IN PROTOBUF GENCODE
# source: ast.proto
# Protobuf Python Version: 5.29.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
from google.protobuf import runtime_version as _runtime_version
from google.protobuf import symbol_database as _symbol_database
from google.protobuf.internal import builder as _builder

_runtime_version.ValidateProtobufRuntimeVersion(
    _runtime_version.Domain.PUBLIC,
    5,
    29,
    0,
    '',
    'ast.proto'
)
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()




DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\tast.proto\x12\x0bwaymark.ast\"6\n\x07Program\x12+\n\tfunctions\x18\x01 \x03(\x0b\x32\x18.waymark.ast.FunctionDef\"\x7f\n\x0b\x46unctionDef\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x1f\n\x02io\x18\x02 \x01(\x0b\x32\x13.waymark.ast.IoDecl\x12 \n\x04\x62ody\x18\x03 \x01(\x0b\x32\x12.waymark.ast.Block\x12\x1f\n\x04span\x18\x04 \x01(\x0b\x32\x11.waymark.ast.Span\"J\n\x06IoDecl\x12\x0e\n\x06inputs\x18\x01 \x03(\t\x12\x0f\n\x07outputs\x18\x02 \x03(\t\x12\x1f\n\x04span\x18\x03 \x01(\x0b\x32\x11.waymark.ast.Span\"T\n\x05\x42lock\x12*\n\nstatements\x18\x01 \x03(\x0b\x32\x16.waymark.ast.Statement\x12\x1f\n\x04span\x18\x02 \x01(\x0b\x32\x11.waymark.ast.Span\"\xa0\x05\n\tStatement\x12-\n\nassignment\x18\x01 \x01(\x0b\x32\x17.waymark.ast.AssignmentH\x00\x12.\n\x0b\x61\x63tion_call\x18\x02 \x01(\x0b\x32\x17.waymark.ast.ActionCallH\x00\x12\x32\n\rspread_action\x18\x03 \x01(\x0b\x32\x19.waymark.ast.SpreadActionH\x00\x12\x34\n\x0eparallel_block\x18\x04 \x01(\x0b\x32\x1a.waymark.ast.ParallelBlockH\x00\x12(\n\x08\x66or_loop\x18\x05 \x01(\x0b\x32\x14.waymark.ast.ForLoopH\x00\x12/\n\x0b\x63onditional\x18\x06 \x01(\x0b\x32\x18.waymark.ast.ConditionalH\x00\x12,\n\ntry_except\x18\x07 \x01(\x0b\x32\x16.waymark.ast.TryExceptH\x00\x12.\n\x0breturn_stmt\x18\x08 \x01(\x0b\x32\x17.waymark.ast.ReturnStmtH\x00\x12*\n\texpr_stmt\x18\t \x01(\x0b\x32\x15.waymark.ast.ExprStmtH\x00\x12,\n\nbreak_stmt\x18\x0b \x01(\x0b\x32\x16.waymark.ast.BreakStmtH\x00\x12\x32\n\rcontinue_stmt\x18\x0c \x01(\x0b\x32\x19.waymark.ast.ContinueStmtH\x00\x12,\n\nwhile_loop\x18\r \x01(\x0b\x32\x16.waymark.ast.WhileLoopH\x00\x12,\n\nsleep_stmt\x18\x0e \x01(\x0b\x32\x16.waymark.ast.SleepStmtH\x00\x12\x1f\n\x04span\x18\n \x01(\x0b\x32\x11.waymark.ast.SpanB\x06\n\x04kind\"\x0b\n\tBreakStmt\"\x0e\n\x0c\x43ontinueStmt\"?\n\nAssignment\x12\x0f\n\x07targets\x18\x01 \x03(\t\x12 \n\x05value\x18\x02 \x01(\x0b\x32\x11.waymark.ast.Expr\"\x9d\x01\n\nActionCall\x12\x13\n\x0b\x61\x63tion_name\x18\x01 \x01(\t\x12\"\n\x06kwargs\x18\x02 \x03(\x0b\x32\x12.waymark.ast.Kwarg\x12,\n\x08policies\x18\x03 \x03(\x0b\x32\x1a.waymark.ast.PolicyBracket\x12\x18\n\x0bmodule_name\x18\x04 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_module_name\"p\n\x0cSpreadAction\x12%\n\ncollection\x18\x01 \x01(\x0b\x32\x11.waymark.ast.Expr\x12\x10\n\x08loop_var\x18\x02 \x01(\t\x12\'\n\x06\x61\x63tion\x18\x03 \x01(\x0b\x32\x17.waymark.ast.ActionCall\"1\n\rParallelBlock\x12 \n\x05\x63\x61lls\x18\x01 \x03(\x0b\x32\x11.waymark.ast.Call\"h\n\x04\x43\x61ll\x12)\n\x06\x61\x63tion\x18\x01 \x01(\x0b\x32\x17.waymark.ast.ActionCallH\x00\x12-\n\x08\x66unction\x18\x02 \x01(\x0b\x32\x19.waymark.ast.FunctionCallH\x00\x42\x06\n\x04kind\"i\n\x07\x46orLoop\x12\x11\n\tloop_vars\x18\x01 \x03(\t\x12#\n\x08iterable\x18\x02 \x01(\x0b\x32\x11.waymark.ast.Expr\x12&\n\nblock_body\x18\x03 \x01(\x0b\x32\x12.waymark.ast.Block\"Y\n\tWhileLoop\x12$\n\tcondition\x18\x01 \x01(\x0b\x32\x11.waymark.ast.Expr\x12&\n\nblock_body\x18\x02 \x01(\x0b\x32\x12.waymark.ast.Block\"\xaa\x01\n\x0b\x43onditional\x12(\n\tif_branch\x18\x01 \x01(\x0b\x32\x15.waymark.ast.IfBranch\x12.\n\relif_branches\x18\x02 \x03(\x0b\x32\x17.waymark.ast.ElifBranch\x12\x31\n\x0b\x65lse_branch\x18\x03 \x01(\x0b\x32\x17.waymark.ast.ElseBranchH\x00\x88\x01\x01\x42\x0e\n\x0c_else_branch\"y\n\x08IfBranch\x12$\n\tcondition\x18\x01 \x01(\x0b\x32\x11.waymark.ast.Expr\x12\x1f\n\x04span\x18\x02 \x01(\x0b\x32\x11.waymark.ast.Span\x12&\n\nblock_body\x18\x03 \x01(\x0b\x32\x12.waymark.ast.Block\"{\n\nElifBranch\x12$\n\tcondition\x18\x01 \x01(\x0b\x32\x11.waymark.ast.Expr\x12\x1f\n\x04span\x18\x02 \x01(\x0b\x32\x11.waymark.ast.Span\x12&\n\nblock_body\x18\x03 \x01(\x0b\x32\x12.waymark.ast.Block\"U\n\nElseBranch\x12\x1f\n\x04span\x18\x01 \x01(\x0b\x32\x11.waymark.ast.Span\x12&\n\nblock_body\x18\x02 \x01(\x0b\x32\x12.waymark.ast.Block\"`\n\tTryExcept\x12,\n\x08handlers\x18\x02 \x03(\x0b\x32\x1a.waymark.ast.ExceptHandler\x12%\n\ttry_block\x18\x03 \x01(\x0b\x32\x12.waymark.ast.Block\"\x9f\x01\n\rExceptHandler\x12\x17\n\x0f\x65xception_types\x18\x01 \x03(\t\x12\x1f\n\x04span\x18\x02 \x01(\x0b\x32\x11.waymark.ast.Span\x12&\n\nblock_body\x18\x03 \x01(\x0b\x32\x12.waymark.ast.Block\x12\x1a\n\rexception_var\x18\x04 \x01(\tH\x00\x88\x01\x01\x42\x10\n\x0e_exception_var\"=\n\nReturnStmt\x12%\n\x05value\x18\x01 \x01(\x0b\x32\x11.waymark.ast.ExprH\x00\x88\x01\x01\x42\x08\n\x06_value\"+\n\x08\x45xprStmt\x12\x1f\n\x04\x65xpr\x18\x01 \x01(\x0b\x32\x11.waymark.ast.Expr\"B\n\tSleepStmt\x12(\n\x08\x64uration\x18\x01 \x01(\x0b\x32\x11.waymark.ast.ExprH\x00\x88\x01\x01\x42\x0b\n\t_duration\"\xc1\x04\n\x04\x45xpr\x12\'\n\x07literal\x18\x01 \x01(\x0b\x32\x14.waymark.ast.LiteralH\x00\x12)\n\x08variable\x18\x02 \x01(\x0b\x32\x15.waymark.ast.VariableH\x00\x12*\n\tbinary_op\x18\x03 \x01(\x0b\x32\x15.waymark.ast.BinaryOpH\x00\x12(\n\x08unary_op\x18\x04 \x01(\x0b\x32\x14.waymark.ast.UnaryOpH\x00\x12%\n\x04list\x18\x05 \x01(\x0b\x32\x15.waymark.ast.ListExprH\x00\x12%\n\x04\x64ict\x18\x06 \x01(\x0b\x32\x15.waymark.ast.DictExprH\x00\x12)\n\x05index\x18\x07 \x01(\x0b\x32\x18.waymark.ast.IndexAccessH\x00\x12%\n\x03\x64ot\x18\x08 \x01(\x0b\x32\x16.waymark.ast.DotAccessH\x00\x12\x32\n\rfunction_call\x18\t \x01(\x0b\x32\x19.waymark.ast.FunctionCallH\x00\x12.\n\x0b\x61\x63tion_call\x18\n \x01(\x0b\x32\x17.waymark.ast.ActionCallH\x00\x12\x32\n\rparallel_expr\x18\x0c \x01(\x0b\x32\x19.waymark.ast.ParallelExprH\x00\x12.\n\x0bspread_expr\x18\r \x01(\x0b\x32\x17.waymark.ast.SpreadExprH\x00\x12\x1f\n\x04span\x18\x0b \x01(\x0b\x32\x11.waymark.ast.SpanB\x06\n\x04kind\"\x7f\n\x07Literal\x12\x13\n\tint_value\x18\x01 \x01(\x03H\x00\x12\x15\n\x0b\x66loat_value\x18\x02 \x01(\x01H\x00\x12\x16\n\x0cstring_value\x18\x03 \x01(\tH\x00\x12\x14\n\nbool_value\x18\x04 \x01(\x08H\x00\x12\x11\n\x07is_none\x18\x05 \x01(\x08H\x00\x42\x07\n\x05value\"\x18\n\x08Variable\x12\x0c\n\x04name\x18\x01 \x01(\t\"v\n\x08\x42inaryOp\x12\x1f\n\x04left\x18\x01 \x01(\x0b\x32\x11.waymark.ast.Expr\x12\'\n\x02op\x18\x02 \x01(\x0e\x32\x1b.waymark.ast.BinaryOperator\x12 \n\x05right\x18\x03 \x01(\x0b\x32\x11.waymark.ast.Expr\"U\n\x07UnaryOp\x12&\n\x02op\x18\x01 \x01(\x0e\x32\x1a.waymark.ast.UnaryOperator\x12\"\n\x07operand\x18\x02 \x01(\x0b\x32\x11.waymark.ast.Expr\"/\n\x08ListExpr\x12#\n\x08\x65lements\x18\x01 \x03(\x0b\x32\x11.waymark.ast.Expr\"3\n\x08\x44ictExpr\x12\'\n\x07\x65ntries\x18\x01 \x03(\x0b\x32\x16.waymark.ast.DictEntry\"M\n\tDictEntry\x12\x1e\n\x03key\x18\x01 \x01(\x0b\x32\x11.waymark.ast.Expr\x12 \n\x05value\x18\x02 \x01(\x0b\x32\x11.waymark.ast.Expr\"R\n\x0bIndexAccess\x12!\n\x06object\x18\x01 \x01(\x0b\x32\x11.waymark.ast.Expr\x12 \n\x05index\x18\x02 \x01(\x0b\x32\x11.waymark.ast.Expr\"A\n\tDotAccess\x12!\n\x06object\x18\x01 \x01(\x0b\x32\x11.waymark.ast.Expr\x12\x11\n\tattribute\x18\x02 \x01(\t\"\x97\x01\n\x0c\x46unctionCall\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x1f\n\x04\x61rgs\x18\x02 \x03(\x0b\x32\x11.waymark.ast.Expr\x12\"\n\x06kwargs\x18\x03 \x03(\x0b\x32\x12.waymark.ast.Kwarg\x12\x34\n\x0fglobal_function\x18\x04 \x01(\x0e\x32\x1b.waymark.ast.GlobalFunction\"7\n\x05Kwarg\x12\x0c\n\x04name\x18\x01 \x01(\t\x12 \n\x05value\x18\x02 \x01(\x0b\x32\x11.waymark.ast.Expr\"0\n\x0cParallelExpr\x12 \n\x05\x63\x61lls\x18\x01 \x03(\x0b\x32\x11.waymark.ast.Call\"n\n\nSpreadExpr\x12%\n\ncollection\x18\x01 \x01(\x0b\x32\x11.waymark.ast.Expr\x12\x10\n\x08loop_var\x18\x02 \x01(\t\x12\'\n\x06\x61\x63tion\x18\x03 \x01(\x0b\x32\x17.waymark.ast.ActionCall\"q\n\rPolicyBracket\x12)\n\x05retry\x18\x01 \x01(\x0b\x32\x18.waymark.ast.RetryPolicyH\x00\x12-\n\x07timeout\x18\x02 \x01(\x0b\x32\x1a.waymark.ast.TimeoutPolicyH\x00\x42\x06\n\x04kind\"c\n\x0bRetryPolicy\x12\x17\n\x0f\x65xception_types\x18\x01 \x03(\t\x12\x13\n\x0bmax_retries\x18\x02 \x01(\r\x12&\n\x07\x62\x61\x63koff\x18\x03 \x01(\x0b\x32\x15.waymark.ast.Duration\"7\n\rTimeoutPolicy\x12&\n\x07timeout\x18\x01 \x01(\x0b\x32\x15.waymark.ast.Duration\"\x1b\n\x08\x44uration\x12\x0f\n\x07seconds\x18\x01 \x01(\x04\"P\n\x04Span\x12\x12\n\nstart_line\x18\x01 \x01(\r\x12\x11\n\tstart_col\x18\x02 \x01(\r\x12\x10\n\x08\x65nd_line\x18\x03 \x01(\r\x12\x0f\n\x07\x65nd_col\x18\x04 \x01(\r*\xdc\x02\n\x0e\x42inaryOperator\x12\x19\n\x15\x42INARY_OP_UNSPECIFIED\x10\x00\x12\x11\n\rBINARY_OP_ADD\x10\x01\x12\x11\n\rBINARY_OP_SUB\x10\x02\x12\x11\n\rBINARY_OP_MUL\x10\x03\x12\x11\n\rBINARY_OP_DIV\x10\x04\x12\x17\n\x13\x42INARY_OP_FLOOR_DIV\x10\x05\x12\x11\n\rBINARY_OP_MOD\x10\x06\x12\x10\n\x0c\x42INARY_OP_EQ\x10\n\x12\x10\n\x0c\x42INARY_OP_NE\x10\x0b\x12\x10\n\x0c\x42INARY_OP_LT\x10\x0c\x12\x10\n\x0c\x42INARY_OP_LE\x10\r\x12\x10\n\x0c\x42INARY_OP_GT\x10\x0e\x12\x10\n\x0c\x42INARY_OP_GE\x10\x0f\x12\x10\n\x0c\x42INARY_OP_IN\x10\x10\x12\x14\n\x10\x42INARY_OP_NOT_IN\x10\x11\x12\x11\n\rBINARY_OP_AND\x10\x14\x12\x10\n\x0c\x42INARY_OP_OR\x10\x15*M\n\rUnaryOperator\x12\x18\n\x14UNARY_OP_UNSPECIFIED\x10\x00\x12\x10\n\x0cUNARY_OP_NEG\x10\x01\x12\x10\n\x0cUNARY_OP_NOT\x10\x02*\xa5\x01\n\x0eGlobalFunction\x12\x1f\n\x1bGLOBAL_FUNCTION_UNSPECIFIED\x10\x00\x12\x19\n\x15GLOBAL_FUNCTION_RANGE\x10\x01\x12\x17\n\x13GLOBAL_FUNCTION_LEN\x10\x02\x12\x1d\n\x19GLOBAL_FUNCTION_ENUMERATE\x10\x03\x12\x1f\n\x1bGLOBAL_FUNCTION_ISEXCEPTION\x10\x04\x62\x06proto3')

_globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'ast_pb2', _globals)
if not _descriptor._USE_C_DESCRIPTORS:
  DESCRIPTOR._loaded_options = None
  _globals['_BINARYOPERATOR']._serialized_start=4747
  _globals['_BINARYOPERATOR']._serialized_end=5095
  _globals['_UNARYOPERATOR']._serialized_start=5097
  _globals['_UNARYOPERATOR']._serialized_end=5174
  _globals['_GLOBALFUNCTION']._serialized_start=5177
  _globals['_GLOBALFUNCTION']._serialized_end=5342
  _globals['_PROGRAM']._serialized_start=26
  _globals['_PROGRAM']._serialized_end=80
  _globals['_FUNCTIONDEF']._serialized_start=82
  _globals['_FUNCTIONDEF']._serialized_end=209
  _globals['_IODECL']._serialized_start=211
  _globals['_IODECL']._serialized_end=285
  _globals['_BLOCK']._serialized_start=287
  _globals['_BLOCK']._serialized_end=371
  _globals['_STATEMENT']._serialized_start=374
  _globals['_STATEMENT']._serialized_end=1046
  _globals['_BREAKSTMT']._serialized_start=1048
  _globals['_BREAKSTMT']._serialized_end=1059
  _globals['_CONTINUESTMT']._serialized_start=1061
  _globals['_CONTINUESTMT']._serialized_end=1075
  _globals['_ASSIGNMENT']._serialized_start=1077
  _globals['_ASSIGNMENT']._serialized_end=1140
  _globals['_ACTIONCALL']._serialized_start=1143
  _globals['_ACTIONCALL']._serialized_end=1300
  _globals['_SPREADACTION']._serialized_start=1302
  _globals['_SPREADACTION']._serialized_end=1414
  _globals['_PARALLELBLOCK']._serialized_start=1416
  _globals['_PARALLELBLOCK']._serialized_end=1465
  _globals['_CALL']._serialized_start=1467
  _globals['_CALL']._serialized_end=1571
  _globals['_FORLOOP']._serialized_start=1573
  _globals['_FORLOOP']._serialized_end=1678
  _globals['_WHILELOOP']._serialized_start=1680
  _globals['_WHILELOOP']._serialized_end=1769
  _globals['_CONDITIONAL']._serialized_start=1772
  _globals['_CONDITIONAL']._serialized_end=1942
  _globals['_IFBRANCH']._serialized_start=1944
  _globals['_IFBRANCH']._serialized_end=2065
  _globals['_ELIFBRANCH']._serialized_start=2067
  _globals['_ELIFBRANCH']._serialized_end=2190
  _globals['_ELSEBRANCH']._serialized_start=2192
  _globals['_ELSEBRANCH']._serialized_end=2277
  _globals['_TRYEXCEPT']._serialized_start=2279
  _globals['_TRYEXCEPT']._serialized_end=2375
  _globals['_EXCEPTHANDLER']._serialized_start=2378
  _globals['_EXCEPTHANDLER']._serialized_end=2537
  _globals['_RETURNSTMT']._serialized_start=2539
  _globals['_RETURNSTMT']._serialized_end=2600
  _globals['_EXPRSTMT']._serialized_start=2602
  _globals['_EXPRSTMT']._serialized_end=2645
  _globals['_SLEEPSTMT']._serialized_start=2647
  _globals['_SLEEPSTMT']._serialized_end=2713
  _globals['_EXPR']._serialized_start=2716
  _globals['_EXPR']._serialized_end=3293
  _globals['_LITERAL']._serialized_start=3295
  _globals['_LITERAL']._serialized_end=3422
  _globals['_VARIABLE']._serialized_start=3424
  _globals['_VARIABLE']._serialized_end=3448
  _globals['_BINARYOP']._serialized_start=3450
  _globals['_BINARYOP']._serialized_end=3568
  _globals['_UNARYOP']._serialized_start=3570
  _globals['_UNARYOP']._serialized_end=3655
  _globals['_LISTEXPR']._serialized_start=3657
  _globals['_LISTEXPR']._serialized_end=3704
  _globals['_DICTEXPR']._serialized_start=3706
  _globals['_DICTEXPR']._serialized_end=3757
  _globals['_DICTENTRY']._serialized_start=3759
  _globals['_DICTENTRY']._serialized_end=3836
  _globals['_INDEXACCESS']._serialized_start=3838
  _globals['_INDEXACCESS']._serialized_end=3920
  _globals['_DOTACCESS']._serialized_start=3922
  _globals['_DOTACCESS']._serialized_end=3987
  _globals['_FUNCTIONCALL']._serialized_start=3990
  _globals['_FUNCTIONCALL']._serialized_end=4141
  _globals['_KWARG']._serialized_start=4143
  _globals['_KWARG']._serialized_end=4198
  _globals['_PARALLELEXPR']._serialized_start=4200
  _globals['_PARALLELEXPR']._serialized_end=4248
  _globals['_SPREADEXPR']._serialized_start=4250
  _globals['_SPREADEXPR']._serialized_end=4360
  _globals['_POLICYBRACKET']._serialized_start=4362
  _globals['_POLICYBRACKET']._serialized_end=4475
  _globals['_RETRYPOLICY']._serialized_start=4477
  _globals['_RETRYPOLICY']._serialized_end=4576
  _globals['_TIMEOUTPOLICY']._serialized_start=4578
  _globals['_TIMEOUTPOLICY']._serialized_end=4633
  _globals['_DURATION']._serialized_start=4635
  _globals['_DURATION']._serialized_end=4662
  _globals['_SPAN']._serialized_start=4664
  _globals['_SPAN']._serialized_end=4744
# @@protoc_insertion_point(module_scope)
