예제 #1
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The function name</param>
 public TsFunction(TsName name)
     : base(name)
 {
     this.ReturnType = TsPrimitive.Void;
     this.Parameters = new List<TsParameter>();
     this.TypeParameters = new List<TsTypeParameter>();
 }
예제 #2
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The function name</param>
 public TsFunction(TsName name)
     : base(name)
 {
     this.ReturnType     = TsPrimitive.Void;
     this.Parameters     = new List <TsParameter>();
     this.TypeParameters = new List <TsTypeParameter>();
 }
예제 #3
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The interface name</param>
 public TsInterface(TsName name)
     : base(name)
 {
     this.TypeParameters    = new List <TsTypeParameter>();
     this.BaseInterfaces    = new List <TsType>();
     this.Properties        = new List <TsProperty>();
     this.IndexerProperties = new List <TsIndexerProperty>();
     this.Functions         = new List <TsFunction>();
 }
예제 #4
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="name">The interface name</param>
        public TsInterface(TsName name)
            : base(name)
        {
            this.TypeParameters = new List<TsTypeParameter>();
            this.BaseInterfaces = new List<TsType>();
            this.Properties = new List<TsProperty>();
            this.Functions = new List<TsFunction>();

            base.Name.Name = "I" + base.Name.Name;
        }
예제 #5
0
        /// <summary>
        /// Formats a name
        /// </summary>
        /// <param name="name">The name</param>
        /// <returns>The string representation of the name</returns>
        public virtual string Format(TsName name)
        {
            if (name == null || name.Name == null)
            {
                return(string.Empty);
            }
            string result = null;

            if (!this.ReservedWordsMapping.TryGetValue(name.Name, out result))
            {
                result = name.Name;
            }
            return(result);
        }
예제 #6
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The interface name</param>
 /// <param name="type">The type name</param>
 /// <param name="optional">Indicates optional property</param>
 public TsProperty(TsName name, TsType type, bool optional = false)
     : base(name)
 {
     this.Type     = type;
     this.Optional = optional;
 }
예제 #7
0
 protected TsPrimitive(TsName name)
     : base(name)
 {
 }
예제 #8
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The enum name</param>
 /// <param name="values">The enum values</param>
 public TsEnum(TsName name, IDictionary <string, long?> values)
     : base(name)
 {
     this.Values = values;
 }
예제 #9
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The name of the module</param>
 /// <param name="types">The types in the module</param>
 public TsModule(TsName name, IEnumerable <TsType> types = null)
     : base(name)
 {
     this.Types = types != null ? new List <TsType>(types) : new List <TsType>();
 }
예제 #10
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The parameter name</param>
 /// <param name="type">The parameter type</param>
 public TsParameter(TsName name, TsType type)
     : base(name)
 {
     this.Type     = type;
     this.Optional = false;
 }
예제 #11
0
 public virtual string Format(TsName name)
 {
     if (name == null || name.Name == null)
         return string.Empty;
     string result = null;
     if (!this.ReservedWordsMapping.TryGetValue(name.Name, out result))
         result = name.Name;
     return result;
 }
예제 #12
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The name of the type</param>
 protected TsType(TsName name)
     : base(name)
 {
 }
예제 #13
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The name of the type</param>
 public TsGenericType(TsName name)
     : base(name)
 {
     this.TypeArguments = new List <TsType>();
 }
예제 #14
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The name of the type</param>
 protected TsObject(TsName name)
 {
     this.Name = name;
 }
예제 #15
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The type name</param>
 protected TsPrimitive(TsName name)
     : base(name)
 {
 }
예제 #16
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The parameter name</param>
 /// <param name="extends">The name of the type used to constrain the type parameter</param>
 public TsTypeParameter(TsName name, TsName extends)
     : this(name)
 {
     this.Extends = extends;
 }
예제 #17
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The parameter name</param>
 public TsTypeParameter(TsName name)
     : base(name)
 {
 }
예제 #18
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The name of the object</param>
 protected TsObject(TsName name)
 {
     this.Name = name;
 }
예제 #19
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The parameter name</param>
 public TsParameter(TsName name, TsType type, bool IsOptional = false)
     : base(name)
 {
     this.Type = type;
     this.Optional = IsOptional;
 }
예제 #20
0
 public TsGenericType(TsName name)
     : base(name)
 {
     this.TypeArguments = new List<TsType>();
 }
예제 #21
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The name of the type</param>
 protected TsType(TsName name)
     : base(name)
 {
     IsNullable = false;
 }
예제 #22
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The parameter name</param>
 public TsTypeParameter(TsName name)
     : base(name)
 {
 }
예제 #23
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The parameter name</param>
 /// <param name="extends">The name of the type used to constrain the type parameter</param>
 public TsTypeParameter(TsName name, TsName extends)
     : this(name)
 {
     this.Extends = extends;
 }
예제 #24
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The interface name</param>
 public TsProperty(TsName name, TsType type)
     : base(name)
 {
     this.Type = type;
     this.Optional = this.Type.IsNullable;
 }
예제 #25
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="name">The name of the module</param>
 public TsModule(TsName name, IEnumerable<TsType> types = null)
     : base(name)
 {
     this.Types = types != null? new List<TsType>(types) : new List<TsType>();
 }