Advertisement
Whistik

Untitled

Jul 11th, 2017
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.00 KB | None | 0 0
  1. class build():
  2.  
  3. ALLOWED_TYPES = ['echo', 'print', 'var', '']
  4. RECOGNIZED_TYPES = []
  5. RECOGNIZED_TYPE_VALUES = []
  6.  
  7. def __init__(self, FileName):
  8. self.FileName = FileName
  9. self.buildFromFile()
  10.  
  11. def buildFromFile(self):
  12. with open(self.FileName, 'r', encoding='utf-8') as FileDocument:
  13. for i, DocumentLines in enumerate(FileDocument):
  14. DocumentLines = DocumentLines.lower()
  15. Line = DocumentLines.split('\n')
  16.  
  17. Type = Line[0].split(" ")
  18.  
  19. if Type[0] in self.ALLOWED_TYPES and Type[0] != '':
  20. self.RECOGNIZED_TYPES.append({i: Type})
  21. elif Type[0] == '':
  22. pass
  23. else:
  24. print("Unrecognized type of '"+Type[0]+"' on line "+str((i+1))+", program terminated.")
  25. return
  26. print(self.RECOGNIZED_TYPES)
  27. #if len(self.RECOGNIZED_TYPES[i][0]) > 2:
  28. # print("YES")
  29. #else:
  30. # print("NO")
  31.  
  32.  
  33. #if len(self.RECOGNIZED_TYPES[i]) < 3:
  34. # print("JE")
  35. #else:
  36. # print("NENI")
  37. #print(self.RECOGNIZED_TYPES)
  38. #self.RECOGNIZED_TYPE_VALUES.append(Type[1])
  39.  
  40. '''
  41. if(len(Type) > 2):
  42. self.RECOGNIZED_TYPE_VALUES.append({Type[0]: Type[3]})
  43. elif(len(Type) == 1):
  44. pass
  45. else:
  46. self.RECOGNIZED_TYPE_VALUES.append({Type[0]: Type[1]})
  47. '''
  48.  
  49. self.CheckTypes()
  50.  
  51. def Type_echo(self, TypeValue):
  52. #[{'echo': "'aaaaa'"}, {'print': "'aaaaa'"}, {'var': "'a'"}]
  53. print(TypeValue)
  54.  
  55. def Type_print(self, TypeValue):
  56. self.Typeecho(TypeValue)
  57.  
  58. def Type_var(self, Variable):
  59. # Variable structure: var NAME = 'VALUE';
  60. pass
  61.  
  62. def CheckTypes(self):
  63. # echo 'Neco'
  64. # print 'Neco'
  65. # var neco = 'neco'
  66. for i, Type in enumerate(self.RECOGNIZED_TYPES):
  67. #tst = self.RECOGNIZED_TYPE_VALUES[i].get(Type)
  68. #tst = str(self.RECOGNIZED_TYPE_VALUES[i]).split("'")
  69. pass
  70. '''
  71. ['{', 'echo', ': "', 'aaaaa', '"}']
  72. ['{', 'print', ': "', 'aaaaa', '"}']
  73. ['{', 'var', ': "', 'a', '"}']
  74. '''
  75. #print(self.RECOGNIZED_TYPE_VALUES)
  76.  
  77. #exec("self.Type_"+Type + '('+tst+')')
  78.  
  79. cls = build('test.txt')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement