Esempio n. 1
0
        public void WriteAttribute(AST.Attribute attr)
        {
            var strata = Strata;

            Strata = ApiStrata.Normal;

            if (attr.UnnamedParameters.Count + attr.NamedParameters.Count == 0)
            {
                Line("[{0}]", AttributeType(attr));
            }
            else
            {
                Code("[{0}(", AttributeType(attr));
                BeginList();

                foreach (var attrarg in attr.UnnamedParameters)
                {
                    ListItem(ToLiteral(attrarg));
                }

                foreach (var attrarg in attr.NamedParameters)
                {
                    ListItem("{0}: {1}", attrarg.Name, ToLiteral(attrarg.Value));
                }
                EndList();
                Line(")]");
            }

            Strata = strata;
        }
Esempio n. 2
0
 public void WriteAttribute(AST.Attribute attr)
 {
     Insert(new AttributeNode(attr));
     Line();
 }
Esempio n. 3
0
        public string AttributeType(AST.Attribute t, bool?abi = null)
        {
            var n = TypeName(t.Type, abi);

            return(n.Remove(n.Length - 9));
        }