Advertisement
Guest User

Untitled

a guest
Jan 25th, 2014
205
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.92 KB | None | 0 0
  1. args = {...}
  2. errorLevel = 0
  3.  
  4. function methodDataToString(data, num)
  5. local numArgs = #data.args
  6. local argString = ""
  7. local methodString = "METHOD: "..num.."\n\t"
  8. methodString = methodString.."NAME: "..data.name.."\n\t"
  9. methodString = methodString.."DESCRIPTION: "..data.description.."\n\t"
  10. methodString = methodString.."RETURN TYPE: "..data.returnType.."\n\t"
  11. if numArgs > 0 then
  12. for j = 1, numArgs do
  13. argString = argString.."ARGUMENT: "..j.."\n\t\t\t"
  14. argString = argString.."NAME: "..data.args[j].name.."\n\t\t\t"
  15. argString = argString.."DESCRIPTION: "..data.args[j].description.."\n\t\t\t"
  16. argString = argString.."TYPE: "..data.args[j].type.."\n\t\t"
  17. end
  18. methodString = methodString.."ARGUMENTS: "..numArgs.."\n\t\t"..argString.."\n"
  19. else
  20. methodString = methodString.."ARGUMENTS: 0\n\n"
  21. end
  22. return methodString
  23. end
  24.  
  25. if #args == 0 then
  26. errorLevel = 1
  27. elseif #args == 1 then
  28. p=peripheral.wrap(args[1])
  29. methods = p.getAdvancedMethodsData()
  30. methodCount = #methods
  31. peripheralData = "Peripheral Info\n"
  32. for i = 1, methodCount do
  33. peripheralData = peripheralData..methodDataToString(methods[i], i)
  34. end
  35. else --Must be 2 or higher
  36. p=peripheral.wrap(args[1])
  37. methods = p.getAdvancedMethodsData()
  38. methodCount = #methods
  39. peripheralData = args[2].." Info\n"
  40. isValid = false
  41. for i = 1, methodCount do
  42. if methods[i].name == args[2] then
  43. isValid = true
  44. peripheralData = peripheralData..methodDataToString(methods[i], i)
  45. end
  46. end
  47. if isValid == false then
  48. errorLevel = 2
  49. end
  50. end
  51.  
  52. if errorLevel == 2 then
  53. print("Invalid Function Name")
  54. elseif errorLevel == 1 then
  55. print("Use \"documentation <side>\" or \"documentation <side> \(function\)\"")
  56. else -- No error
  57. file = fs.open("methods","w")
  58. file.writeLine(peripheralData)
  59. file.close()
  60. print("Method Data was saved to file \"methods\"")
  61. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement