示例#1
0
 public IEnumerable <String> BinaryTranslator_ServerCommand(ServerCommandDef c, String NamespaceName)
 {
     foreach (var _Line in Combine(Begin(), BinaryTranslator_Record(GetSuffixedTypeName(c.Name, c.Version, "Event", NamespaceName), GetSuffixedTypeString(c.Name, c.Version, "Event", NamespaceName), c.OutParameters, NamespaceName)))
     {
         yield return(_Line);
     }
 }
示例#2
0
        public void FillTranslatorServerCommand(Dictionary <String, TypeDef> VersionedNameToType, ServerCommandDef c, List <String> l, String NamespaceName)
        {
            var Name = c.FullName();
            ServerCommandDef cHead = null;

            if (VersionedNameToType.ContainsKey(Name))
            {
                var tHead = VersionedNameToType[Name];
                if (tHead.OnServerCommand)
                {
                    cHead = tHead.ServerCommand;
                }
            }
            var cHeadTypeRef               = Nonversioned(c.GetTypeSpec()).TypeRef;
            var VersionedSimpleName        = c.GetTypeSpec().SimpleName(NamespaceName);
            var EventTypeString            = GetSuffixedTypeString(c.Name, c.Version, "Event", NamespaceName);
            var EventName                  = GetSuffixedTypeName(c.Name, c.Version, "Event", NamespaceName);
            var UnversionedEventTypeString = GetSuffixedTypeString(cHeadTypeRef.Name, cHeadTypeRef.Version, "Event", NamespaceName);

            l.AddRange(Translator_ServerCommand(VersionedSimpleName, EventTypeString, NamespaceName).Select(Line => cHead != null ? Line : "//" + Line));
            if (cHead != null)
            {
                FillTranslatorRecordFrom(EventName, UnversionedEventTypeString, EventTypeString, c.OutParameters, cHead.OutParameters, l, false, NamespaceName);
            }
            else
            {
                FillTranslatorRecordFrom(EventName, UnversionedEventTypeString, EventTypeString, c.OutParameters, new List <VariableDef> {
                }, l, true, NamespaceName);
            }
        }
示例#3
0
        public IEnumerable <String> ServerCommand(ServerCommandDef c)
        {
            var EventRef = GetSuffixedTypeRef(c.Name, c.Version, "Event");
            var Event    = new RecordDef {
                Name = EventRef.Name, Version = EventRef.Version, GenericParameters = new List <VariableDef> {
                }, Fields = c.OutParameters, Attributes = c.Attributes, Description = c.Description
            };

            foreach (var _Line in Combine(Begin(), Record(Event)))
            {
                yield return(_Line);
            }
        }