Exemple #1
0
        public static JassFunction Parse(string[] script)
        {
            string[]     initLine   = script[0].Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
            JassFunction function   = new JassFunction(initLine[1], initLine[initLine.Length - 1]);
            int          takesIndex = script[0].IndexOf("takes") + 6;

            initLine = script[0].Substring(takesIndex, script[0].LastIndexOf("return") - takesIndex).Replace(',', ' ').Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
            if (string.Compare(initLine[0], "nothing", true) != 0)
            {
                for (int i = 0; i < initLine.Length; i += 2)
                {
                    function.TakesVariable.Add(new JassVariable(initLine[i], initLine[i + 1]));
                }
            }

            int CurrentLine = 1;

            for (; CurrentLine < script.Length; CurrentLine++)
            {
                if (script[CurrentLine].Length < 5 || string.Compare(script[CurrentLine].Substring(0, 5), "local", true) != 0)
                {
                    break;
                }
                function.LocalVariable.Add(JassVariable.Parse(script[CurrentLine].Substring(6, script[CurrentLine].Length - 6)));
            }
            while (string.Compare(script[CurrentLine], "endfunction", true) != 0)
            {
                function.Lines.Add(script[CurrentLine++]);
            }
            return(function);
        }
Exemple #2
0
        public ActionResult DeleteConfirmed(int id)
        {
            JassVariable jassvariable = db.JassVariables.Find(id);

            db.JassVariables.Remove(jassvariable);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Exemple #3
0
        //
        // GET: /Variable/Delete/5

        public ActionResult Delete(int id = 0)
        {
            JassVariable jassvariable = db.JassVariables.Find(id);

            if (jassvariable == null)
            {
                return(HttpNotFound());
            }
            return(View(jassvariable));
        }
Exemple #4
0
 public ActionResult Edit(JassVariable jassvariable)
 {
     if (ModelState.IsValid)
     {
         db.Entry(jassvariable).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(jassvariable));
 }
Exemple #5
0
        public ActionResult Create(JassVariable jassvariable)
        {
            if (ModelState.IsValid)
            {
                db.JassVariables.Add(jassvariable);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(jassvariable));
        }