Advertisement
CaptainLepidus

XML Parser Source 1.2

Feb 29th, 2012
1,662
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. {
  2.     ds = ds_map_create();
  3.     var i,j,tt;
  4.     s = 0;
  5.     mode = -1;
  6.     modes = 0;
  7.     for(i=1;i<string_length(argument0)+100;i=i+1)
  8.     {
  9.         cc = 1;
  10.         sc = string_char_at( argument0 , i );
  11.         if string_char_at( argument0 , i ) == '>'
  12.         {
  13.             modes = 0;
  14.             cc = 0;
  15.         }
  16.         if string_char_at( argument0 , i ) == '<'
  17.         {
  18.             cc = 0;
  19.             if string_char_at( argument0 , i + 1 ) == '/'
  20.             {
  21.                 tt = branch[ 0 ];
  22.                 for(j=1;j<=mode;j=j+1)
  23.                 {
  24.                     tt = tt + '\' + branch[ j ];
  25.                }
  26.                ds_map_add( ds , tt , content[ mode ] );
  27.                mode = mode - 1;
  28.                modes = -1;
  29.            }
  30.            else
  31.            {
  32.                mode = mode + 1;
  33.                modes = 1;
  34.                branch[ mode ] = '';
  35.                content[ mode ] = '';
  36.            }
  37.        }
  38.        if cc == 0 or mode == -1
  39.        {
  40.            //nothing
  41.        }
  42.        else if modes == 1
  43.        {
  44.            branch[ mode ] = branch[ mode ] + sc;
  45.        }
  46.        else if modes == 0
  47.        {
  48.            content[ mode ] = content[ mode ] + sc;
  49.        }
  50.    }
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement