digraph "dbsqlexec"
{
 // LATEX_PDF_SIZE
  bgcolor="transparent";
  edge [fontname=Helvetica,fontsize=10,labelfontname=Helvetica,labelfontsize=10];
  node [fontname=Helvetica,fontsize=10,shape=box,height=0.2,width=0.4];
  rankdir="LR";
  Node1 [id="Node000001",label="dbsqlexec",height=0.2,width=0.4,color="gray40", fillcolor="grey60", style="filled", fontcolor="black",tooltip="send the SQL command to the server and wait for an answer."];
  Node1 -> Node2 [id="edge1_Node000001_Node000002",color="steelblue1",style="solid",tooltip=" "];
  Node2 [id="Node000002",label="dbsqlok",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00575.html#gae1f50a6a2c31fda57cb481922b06841e",tooltip="Wait for results of a query from the server."];
  Node2 -> Node3 [id="edge2_Node000002_Node000003",color="steelblue1",style="solid",tooltip=" "];
  Node3 [id="Node000003",label="tds_flush_packet",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00591.html#ga5feb53554e8917a81bbbc332163a61fb",tooltip="Flush packet to server."];
  Node2 -> Node4 [id="edge3_Node000002_Node000004",color="steelblue1",style="solid",tooltip=" "];
  Node4 [id="Node000004",label="tds_process_tokens",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00592.html#gabfc9de1d1fe718818caf63a4be4035a6",tooltip="process all streams."];
  Node4 -> Node5 [id="edge4_Node000004_Node000005",color="steelblue1",style="solid",tooltip=" "];
  Node5 [id="Node000005",label="tds5_process_dyn_result2",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#gae688b515631141acfbc41bbb91c8b921",tooltip="Process new TDS 5.0 token for describing output parameters."];
  Node5 -> Node13 [id="edge5_Node000005_Node000013",color="steelblue1",style="solid",tooltip=" "];
  Node13 [id="Node000013",label="tds_dstr_cstr",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00593.html#gac536f0e4d77d3cff5702719362ec1766",tooltip="Returns a C version (NUL terminated string) of dstr."];
  Node5 -> Node30 [id="edge6_Node000005_Node000030",color="steelblue1",style="solid",tooltip=" "];
  Node30 [id="Node000030",label="tds_get_byte",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00591.html#ga0cb72d3f6943795c39db1fa692be0a58",tooltip="Return a single byte from the input buffer."];
  Node4 -> Node33 [id="edge7_Node000004_Node000033",color="steelblue1",style="solid",tooltip=" "];
  Node33 [id="Node000033",label="tds5_process_result",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#ga547b2f48659f77a69aa802d861ac827d",tooltip="tds5_process_result() is the TDS 5.0 result set processing routine."];
  Node33 -> Node30 [id="edge8_Node000033_Node000030",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node36 [id="edge9_Node000004_Node000036",color="steelblue1",style="solid",tooltip=" "];
  Node36 [id="Node000036",label="tds5_process_result2",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#gabe2bdd5a41ce067cb31aef18ff81cb1c",tooltip="tds5_process_result2() is the new TDS 5.0 result set processing routine."];
  Node36 -> Node13 [id="edge10_Node000036_Node000013",color="steelblue1",style="solid",tooltip=" "];
  Node36 -> Node39 [id="edge11_Node000036_Node000039",color="steelblue1",style="solid",tooltip=" "];
  Node39 [id="Node000039",label="tds_dstr_isempty",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00593.html#ga197c6af67f2e7469d06c2aa055917b1e",tooltip="test if string is empty"];
  Node36 -> Node30 [id="edge12_Node000036_Node000030",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node40 [id="edge13_Node000004_Node000040",color="steelblue1",style="solid",tooltip=" "];
  Node40 [id="Node000040",label="tds7_process_compute\l_result",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#ga6728e344caa20aea1def85f58dea138b",tooltip="tds7_process_compute_result() processes compute result sets for TDS 7/8."];
  Node40 -> Node39 [id="edge14_Node000040_Node000039",color="steelblue1",style="solid",tooltip=" "];
  Node40 -> Node30 [id="edge15_Node000040_Node000030",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node44 [id="edge16_Node000004_Node000044",color="steelblue1",style="solid",tooltip=" "];
  Node44 [id="Node000044",label="tds7_process_result",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#gaca56fc22d65a24a96d1bef310ade73aa",tooltip="tds7_process_result() is the TDS 7.0 result set processing routine."];
  Node44 -> Node13 [id="edge17_Node000044_Node000013",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node19 [id="edge18_Node000004_Node000019",color="steelblue1",style="solid",tooltip=" "];
  Node19 [id="Node000019",label="tds_close_socket",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00591.html#ga3e3f76009fce5ceedb2f42bb2c9aed2e",tooltip="Close current socket."];
  Node4 -> Node30 [id="edge19_Node000004_Node000030",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node45 [id="edge20_Node000004_Node000045",color="steelblue1",style="solid",tooltip=" "];
  Node45 [id="Node000045",label="tds_peek",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00591.html#ga221e98a9c8be96ec6c8547891e1b53af",tooltip="Reads a byte from the TDS stream without removing it."];
  Node45 -> Node30 [id="edge21_Node000045_Node000030",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node46 [id="edge22_Node000004_Node000046",color="steelblue1",style="solid",tooltip=" "];
  Node46 [id="Node000046",label="tds_process_col_fmt",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#ga4e3dd9d3614f5f0433b78b761dd68741",tooltip="tds_process_col_fmt() is the other half of result set processing under TDS 4.2."];
  Node4 -> Node47 [id="edge23_Node000004_Node000047",color="steelblue1",style="solid",tooltip=" "];
  Node47 [id="Node000047",label="tds_process_col_name",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#ga905d2fa5e1b602817bd16bb0fcf9eadb",tooltip="tds_process_col_name() is one half of the result set under TDS 4.2 it contains all the column names,..."];
  Node4 -> Node51 [id="edge24_Node000004_Node000051",color="steelblue1",style="solid",tooltip=" "];
  Node51 [id="Node000051",label="tds_process_compute",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00592.html#ga6fcb37d5addebdc1af9f34ebc59fd7a8",tooltip="tds_process_compute() processes compute rows and places them in the row buffer."];
  Node4 -> Node52 [id="edge25_Node000004_Node000052",color="steelblue1",style="solid",tooltip=" "];
  Node52 [id="Node000052",label="tds_process_compute\l_names",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#gae5b3e01f3d665f9e377de091f46f1ab9",tooltip="tds_process_compute_names() processes compute result sets."];
  Node4 -> Node53 [id="edge26_Node000004_Node000053",color="steelblue1",style="solid",tooltip=" "];
  Node53 [id="Node000053",label="tds_process_compute\l_result",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#gae3368ea80d0d8b13791ceb13ee5f19c9",tooltip="tds_process_compute_result() processes compute result sets."];
  Node53 -> Node39 [id="edge27_Node000053_Node000039",color="steelblue1",style="solid",tooltip=" "];
  Node53 -> Node30 [id="edge28_Node000053_Node000030",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node54 [id="edge29_Node000004_Node000054",color="steelblue1",style="solid",tooltip=" "];
  Node54 [id="Node000054",label="tds_process_cursor\l_tokens",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#ga315d875d90c64d12d61fc9e33b4dee96",tooltip="Reads cursor command results."];
  Node54 -> Node30 [id="edge30_Node000054_Node000030",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node55 [id="edge31_Node000004_Node000055",color="steelblue1",style="solid",tooltip=" "];
  Node55 [id="Node000055",label="tds_process_default\l_tokens",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#ga39453d084f3f780ac4602d4abf2839f7",tooltip="tds_process_default_tokens() is a catch all function that is called to process tokens not known to ot..."];
  Node55 -> Node5 [id="edge32_Node000055_Node000005",color="steelblue1",style="solid",tooltip=" "];
  Node55 -> Node33 [id="edge33_Node000055_Node000033",color="steelblue1",style="solid",tooltip=" "];
  Node55 -> Node36 [id="edge34_Node000055_Node000036",color="steelblue1",style="solid",tooltip=" "];
  Node55 -> Node44 [id="edge35_Node000055_Node000044",color="steelblue1",style="solid",tooltip=" "];
  Node55 -> Node19 [id="edge36_Node000055_Node000019",color="steelblue1",style="solid",tooltip=" "];
  Node55 -> Node30 [id="edge37_Node000055_Node000030",color="steelblue1",style="solid",tooltip=" "];
  Node55 -> Node45 [id="edge38_Node000055_Node000045",color="steelblue1",style="solid",tooltip=" "];
  Node55 -> Node46 [id="edge39_Node000055_Node000046",color="steelblue1",style="solid",tooltip=" "];
  Node55 -> Node47 [id="edge40_Node000055_Node000047",color="steelblue1",style="solid",tooltip=" "];
  Node55 -> Node54 [id="edge41_Node000055_Node000054",color="steelblue1",style="solid",tooltip=" "];
  Node55 -> Node59 [id="edge42_Node000055_Node000059",color="steelblue1",style="solid",tooltip=" "];
  Node59 [id="Node000059",label="tds_process_dyn_result",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#ga416cf119c1d4a0fca27dc5b50c261358",tooltip="Process results from dynamic."];
  Node59 -> Node30 [id="edge43_Node000059_Node000030",color="steelblue1",style="solid",tooltip=" "];
  Node55 -> Node60 [id="edge44_Node000055_Node000060",color="steelblue1",style="solid",tooltip=" "];
  Node60 [id="Node000060",label="tds_process_end",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#ga6ee2e7af38af768611b8bf4b79c36f46",tooltip="tds_process_end() processes any of the DONE, DONEPROC, or DONEINPROC tokens."];
  Node55 -> Node82 [id="edge45_Node000055_Node000082",color="steelblue1",style="solid",tooltip=" "];
  Node82 [id="Node000082",label="tds_process_info",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#ga65a2316369529731732f200c190d05d6",tooltip="tds_process_info() is called for INFO, ERR, or EED tokens and is responsible for calling the CLI's me..."];
  Node82 -> Node13 [id="edge46_Node000082_Node000013",color="steelblue1",style="solid",tooltip=" "];
  Node82 -> Node30 [id="edge47_Node000082_Node000030",color="steelblue1",style="solid",tooltip=" "];
  Node82 -> Node55 [id="edge48_Node000082_Node000055",color="steelblue1",style="solid",tooltip=" "];
  Node82 -> Node83 [id="edge49_Node000082_Node000083",color="steelblue1",style="solid",tooltip=" "];
  Node83 [id="Node000083",label="tds_unget_byte",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00591.html#gad70d59fb317d098b0c9fd29dd77131a8",tooltip="Unget will always work as long as you don't call it twice in a row."];
  Node55 -> Node84 [id="edge50_Node000055_Node000084",color="steelblue1",style="solid",tooltip=" "];
  Node84 [id="Node000084",label="tds_process_nbcrow",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#gaf7264c9eb3aa7a73358a4c65f02d3d3c",tooltip="tds_process_nbcrow() processes rows and places them in the row buffer."];
  Node55 -> Node85 [id="edge51_Node000055_Node000085",color="steelblue1",style="solid",tooltip=" "];
  Node85 [id="Node000085",label="tds_process_param_result\l_tokens",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00592.html#ga9fdef8228d29cab7fa9098f07fa73fba",tooltip="Process parameters from networks."];
  Node85 -> Node30 [id="edge52_Node000085_Node000030",color="steelblue1",style="solid",tooltip=" "];
  Node85 -> Node86 [id="edge53_Node000085_Node000086",color="steelblue1",style="solid",tooltip=" "];
  Node86 [id="Node000086",label="tds_process_param_result",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#gacb3354443bcefe7a500a500a4904cc05",tooltip="process output parameters of a stored procedure."];
  Node86 -> Node13 [id="edge54_Node000086_Node000013",color="steelblue1",style="solid",tooltip=" "];
  Node86 -> Node39 [id="edge55_Node000086_Node000039",color="steelblue1",style="solid",tooltip=" "];
  Node85 -> Node83 [id="edge56_Node000085_Node000083",color="steelblue1",style="solid",tooltip=" "];
  Node55 -> Node90 [id="edge57_Node000055_Node000090",color="steelblue1",style="solid",tooltip=" "];
  Node90 [id="Node000090",label="tds_process_params\l_result_token",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00592.html#ga7b18c0911a9dc69939577b39eb64725d",tooltip="tds_process_params_result_token() processes params on TDS5."];
  Node55 -> Node91 [id="edge58_Node000055_Node000091",color="steelblue1",style="solid",tooltip=" "];
  Node91 [id="Node000091",label="tds_process_row",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00592.html#gaad814dd6e35aee8332035d06dc8b5d65",tooltip="tds_process_row() processes rows and places them in the row buffer."];
  Node55 -> Node92 [id="edge59_Node000055_Node000092",color="steelblue1",style="solid",tooltip=" "];
  Node92 [id="Node000092",label="tds_process_tabname",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#gaeec59bca9bd0c5388e245f0d19d9c81a",tooltip="Process list of table from network."];
  Node92 -> Node30 [id="edge60_Node000092_Node000030",color="steelblue1",style="solid",tooltip=" "];
  Node92 -> Node83 [id="edge61_Node000092_Node000083",color="steelblue1",style="solid",tooltip=" "];
  Node55 -> Node96 [id="edge62_Node000055_Node000096",color="steelblue1",style="solid",tooltip=" "];
  Node96 [id="Node000096",label="tds_token_name",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00592.html#ga7f24a7af985cd320788122e98072b7af",tooltip="Returns string representation for a given token type."];
  Node55 -> Node83 [id="edge63_Node000055_Node000083",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node59 [id="edge64_Node000004_Node000059",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node97 [id="edge65_Node000004_Node000097",color="steelblue1",style="solid",tooltip=" "];
  Node97 [id="Node000097",label="tds_process_dynamic",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00592.html#ga5cfc0340d8d717e67f60037e029b2142",tooltip="tds_process_dynamic() finds the element of the dyns array for the id"];
  Node97 -> Node30 [id="edge66_Node000097_Node000030",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node60 [id="edge67_Node000004_Node000060",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node82 [id="edge68_Node000004_Node000082",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node84 [id="edge69_Node000004_Node000084",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node86 [id="edge70_Node000004_Node000086",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node85 [id="edge71_Node000004_Node000085",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node90 [id="edge72_Node000004_Node000090",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node91 [id="edge73_Node000004_Node000091",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node92 [id="edge74_Node000004_Node000092",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node76 [id="edge75_Node000004_Node000076",color="steelblue1",style="solid",tooltip=" "];
  Node76 [id="Node000076",label="tds_set_cur_dyn",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00590.html#gae8b7db85af16701fc0604eb117cbd4e4",tooltip="Set current dynamic."];
  Node4 -> Node96 [id="edge76_Node000004_Node000096",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node83 [id="edge77_Node000004_Node000083",color="steelblue1",style="solid",tooltip=" "];
  Node1 -> Node99 [id="edge78_Node000001_Node000099",color="steelblue1",style="solid",tooltip=" "];
  Node99 [id="Node000099",label="dbsqlsend",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00575.html#gac980139b9cea03cf93e373d425991481",tooltip="Transmit the command buffer to the server."];
  Node99 -> Node100 [id="edge79_Node000099_Node000100",color="steelblue1",style="solid",tooltip=" "];
  Node100 [id="Node000100",label="dbperror",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00581.html#ga302a4ce6559b81808e3be51615cd1b67",tooltip="Call client-installed error handler."];
  Node100 -> Node13 [id="edge80_Node000100_Node000013",color="steelblue1",style="solid",tooltip=" "];
  Node100 -> Node39 [id="edge81_Node000100_Node000039",color="steelblue1",style="solid",tooltip=" "];
  Node99 -> Node4 [id="edge82_Node000099_Node000004",color="steelblue1",style="solid",tooltip=" "];
  Node99 -> Node101 [id="edge83_Node000099_Node000101",color="steelblue1",style="solid",tooltip=" "];
  Node101 [id="Node000101",label="tds_submit_query",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00590.html#ga5a29ae7f99d089dc3cea85ec6ee5f3ab",tooltip="Sends a language string to the database server for processing."];
  Node101 -> Node102 [id="edge84_Node000101_Node000102",color="steelblue1",style="solid",tooltip=" "];
  Node102 [id="Node000102",label="tds_submit_query_params",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00590.html#ga95e0fccedc459a4404f496eec74a369a",tooltip="Sends a language string to the database server for processing."];
  Node102 -> Node39 [id="edge85_Node000102_Node000039",color="steelblue1",style="solid",tooltip=" "];
}
