static private void RetrieveInfoFromString(string inString) { if (string.IsNullOrEmpty(inString)) { Error("File was empty"); return; } try { StringSlice[] lines = StringSlice.Split(inString, new char[] { '\n' }, StringSplitOptions.None); if (lines.Length < 3) { Error("File is missing information"); return; } s_CachedBuildId = lines[0].ToString(); DateTime buildDate = DateTime.FromFileTimeUtc(StringParser.ParseLong(lines[1], 0)); s_CachedBuildDate = GenerateBuildDate(buildDate); s_CachedBundleVersion = lines[2].ToString(); s_CachedBuildTag = lines.Length >= 4 ? lines[3].Unescape() : string.Empty; s_CachedBuildBranch = lines.Length >= 5 ? lines[4].Unescape() : string.Empty; Loaded(); } catch (Exception e) { Error("Exception\n{0}", e.ToString()); } }
/// <summary> /// Attempts to invoke an instance method. /// </summary> public bool TryInvoke(object inTarget, StringHash32 inId, StringSlice inArguments, object inContext, out object outResult) { var method = FindMethodWithRedirect(ref inTarget, inId); if (method == null) { outResult = null; return(false); } TempList16 <StringSlice> args = default(TempList16 <StringSlice>); inArguments.Split(m_StringSplitter, StringSplitOptions.None, ref args); return(method.TryInvoke(inTarget, args, inContext, m_StringConverter, out outResult)); }