コード例 #1
0
 /// <summary>
 /// Constructor for FunctionLibrary.
 /// </summary>
 /// <param name="ns">
 ///            namespace. </param>
 public FunctionLibrary(string ns)
 {
     _namespace = ns;
     _functions = new Hashtable();
     _sc        = null;
     _dc        = null;
 }
コード例 #2
0
        /// <summary>
        /// Prefix-from-QName operation.
        /// </summary>
        /// <param name="args">
        ///            Result from the expressions evaluation. </param>
        /// <exception cref="DynamicError">
        ///             Dynamic error. </exception>
        /// <returns> Result of fn:prefix-from-QName operation. </returns>
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
//ORIGINAL LINE: public static org.eclipse.wst.xml.xpath2.api.ResultSequence prefix(java.util.Collection args, org.eclipse.wst.xml.xpath2.api.StaticContext sc) throws org.eclipse.wst.xml.xpath2.processor.DynamicError
        public static ResultSequence prefix(ICollection args, StaticContext sc)
        {
            ICollection cargs = Function.convert_arguments(args, expected_args());

            // get arg
            var i = cargs.GetEnumerator();

            i.MoveNext();
            ResultSequence arg1 = (ResultSequence)i.Current;

            if (arg1.empty())
            {
                return(ResultBuffer.EMPTY);
            }

            QName qname = (QName)arg1.first();

            string prefix = qname.prefix();

            if (!string.ReferenceEquals(prefix, null))
            {
                if (!XMLConstants.NULL_NS_URI.Equals(sc.NamespaceContext.getNamespaceURI(prefix)))
                {
                    return(new XSNCName(prefix));
                }
                else
                {
                    throw DynamicError.invalidPrefix();
                }
            }
            return(ResultBuffer.EMPTY);
        }
コード例 #3
0
        public IHttpActionResult FireAlarm(FireAlarm alarm)
        {
            AlarmDomain alarmDomain   = new AlarmDomain();
            DeviceRead  currentDevice = StaticContext.GetCurrentDevice();

            if (currentDevice == null)
            {
                throw new UnauthorizedAccessException("Device token required");
            }

            ValuesDomain valuesDomain = new ValuesDomain();
            DeviceValue  val          = new DeviceValue();

            val          = Utilities.Map <FireAlarm, DeviceValue>(alarm, val);
            val.DeviceId = currentDevice.Id;
            val.AlarmId  = alarm.AlarmId;
            valuesDomain.SaveValue(val);



            if (alarm.Side == "onserver")
            {
                AlarmFireDto alarmDto = new AlarmFireDto();
                alarmDto = Utilities.Map <FireAlarm, AlarmFireDto>(alarm, alarmDto);
                alarmDomain.FireAlarm(alarmDto);
            }
            return(Ok());
        }
コード例 #4
0
ファイル: FnQName.cs プロジェクト: kaby76/AntlrTreeEditing
        /// <summary>
        /// Resolve the QName of the given arguments.
        /// </summary>
        /// <param name="args">
        ///            Result from teh expressions evaluation. </param>
        /// <param name="sc">
        ///            Result of static context operation. </param>
        /// <exception cref="DynamicError">
        ///             Dynamic error. </exception>
        /// <returns> Result of the fn:QName operation. </returns>
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
//ORIGINAL LINE: public static org.eclipse.wst.xml.xpath2.api.ResultSequence resolve_QName(java.util.Collection args, org.eclipse.wst.xml.xpath2.api.StaticContext sc) throws org.eclipse.wst.xml.xpath2.processor.DynamicError
        public static ResultSequence resolve_QName(ICollection args, StaticContext sc)
        {
            ICollection cargs = Function.convert_arguments(args, expected_args());

            // get args
            IEnumerator argiter = cargs.GetEnumerator();

            argiter.MoveNext();
            ResultSequence arg1 = (ResultSequence)argiter.Current;

            string ns = null;

            if (!(arg1 == null || arg1.empty()))
            {
                ns = ((XSString)arg1.first()).value();
            }

            argiter.MoveNext();
            ResultSequence arg2 = (ResultSequence)argiter.Current;
            string         name = ((XSString)arg2.first()).value();

            QName qn = QName.parse_QName(name);

            if (qn == null)
            {
                throw DynamicError.lexical_error(null);
            }
            qn.set_namespace(ns);

            return(qn);
        }
コード例 #5
0
        private IEnumerable <Solution> IsNat(Statement st)
        {
            IVariable         lv = null;
            List <Expression> callArgs;
            object            result = null;

            InitArgs(st, out lv, out callArgs);
            Contract.Assert(lv != null, Error.MkErr(st, 8));
            Contract.Assert(callArgs.Count == 1, Error.MkErr(st, 0, 1, callArgs.Count));
            foreach (var item in ResolveExpression(callArgs[0]))
            {
                var ns = item as NameSegment;
                if (ns == null)
                {
                    continue;
                }
                var type = StaticContext.GetVariableType(ns);
                if (type != null)
                {
                    continue;
                }
                Contract.Assert(false, Error.MkErr(st, 24));
                result = new LiteralExpr(st.Tok, false);
            }

            yield return(AddNewLocal(lv, result));
        }
コード例 #6
0
        private AnyType createAttrType(Item at, StaticContext sc)
        {
            anyType = new AttrType();
            NodeType nodeType = (NodeType)at;
            Node     node     = nodeType.node_value();

            if (node == null)
            {
                return(anyType);
            }

            string nodeName = node.LocalName;

            if (wild())
            {
                if (type() != null)
                {
                    anyType = createAttrForXSDType(node, sc);
                }
            }
            else if (nodeName.Equals(name().local()))
            {
                if (type() != null)
                {
                    anyType = createAttrForXSDType(node, sc);
                }
                else
                {
                    anyType = new AttrType((Attr)node, sc.TypeModel);
                }
            }
            return(anyType);
        }
コード例 #7
0
        private AnyType createElementType(Item at, StaticContext sc)
        {
            anyType = new ElementType();
            NodeType nodeType = (NodeType)at;
            Node     node     = nodeType.node_value();
            Document doc      = null;

            if (node.NodeType == NodeConstants.DOCUMENT_NODE)
            {
                doc = (Document)node;
            }
            else
            {
                doc = nodeType.node_value().OwnerDocument;
            }

            NodeList nodeList = null;

            if (!wild())
            {
                nodeList = doc.getElementsByTagNameNS(name().@namespace(), name().local());
            }
            else
            {
                nodeList = new SingleItemNodeListImpl(node);
            }

            if (nodeList.Length > 0)
            {
                anyType = createElementForXSDType(nodeList, sc);
            }
            return(anyType);
        }
コード例 #8
0
        protected SheshaNhTestBase() : base()
        {
            // Seed initial data for host
            AbpSession.TenantId = null;

            UsingDbSession(session =>
            {
                //new InitialHostDbBuilder(session).Create();
                //new DefaultTenantBuilder(session).Create();
            });


            // Seed initial data for default tenant
            AbpSession.TenantId = 1;
            UsingDbSession(session =>
            {
                //new TenantRoleAndUserBuilder(session, 1).Create();
            });

            //LoginAsDefaultTenantAdmin();
            LoginAsHostAdmin();
            //AbpSession.TenantId = null; // workaround

            StaticContext.SetIocManager(LocalIocManager);
            EntityHelper.RefreshStore(LocalIocManager);
        }
コード例 #9
0
        public void Setup()
        {
            Assert.That(Application.isPlaying,
                        "ZenjectIntegrationTestFixture is meant to be used for play mode tests only.  Please ensure your test file '{0}' is outside of the editor folder and try again.", GetType());

            ZenjectTestUtil.DestroyEverythingExceptTestRunner(true);
            StaticContext.Clear();
        }
コード例 #10
0
        public IHttpActionResult GetDeviceConfig()
        {
            DeviceDomain deviceDomain    = new DeviceDomain();
            Guid         currentDeviceId = StaticContext.GetCurrentDeviceId();
            DeviceConfig config          = deviceDomain.GetDeviceConfig(currentDeviceId);

            return(Ok(config));
        }
コード例 #11
0
        public IHttpActionResult GetDeviceCommands()
        {
            Guid         currentDeviceId = StaticContext.GetCurrentDeviceId();
            DeviceDomain deviceDomain    = new DeviceDomain();

            string[] commands = deviceDomain.GetDeviceCommands(currentDeviceId);
            return(Ok(commands));
        }
コード例 #12
0
        /// <summary>
        /// Static-base-Uri operation.
        /// </summary>
        /// <param name="args">
        ///            Result from the expressions evaluation. </param>
        /// <param name="sc">
        ///            Result of static context operation. </param>
        /// <exception cref="DynamicError">
        ///             Dynamic error. </exception>
        /// <returns> Result of fn:static-base-uri operation. </returns>
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
//ORIGINAL LINE: public static org.eclipse.wst.xml.xpath2.api.ResultSequence static_base_uri(java.util.Collection args, org.eclipse.wst.xml.xpath2.api.StaticContext sc) throws org.eclipse.wst.xml.xpath2.processor.DynamicError
        public static ResultSequence static_base_uri(ICollection args, StaticContext sc)
        {
            Debug.Assert(args.Count == 0);
            Debug.Assert(sc != null);

            // make a copy prolly
            return(ResultSequenceFactory.create_new(new XSAnyURI(sc.BaseUri.ToString())));
        }
コード例 #13
0
 public DynamicContextBuilder(StaticContext sc)
 {
     if (!InstanceFieldsInitialized)
     {
         InitializeInstanceFields();
         InstanceFieldsInitialized = true;
     }
     _staticContext = sc;
 }
コード例 #14
0
        public void StaticContext_Can_Bind_Instance()
        {
            var instance = new ContextInstanceFixture();
            var context  = new StaticContext <ContextInstanceFixture>();

            Assert.IsNull(context.Current);
            context.Bind(instance);
            Assert.IsNotNull(context.Current);
            Assert.AreEqual(instance, context.Current);
        }
コード例 #15
0
        /// <summary>
        /// Evaluate the function using the arguments passed.
        /// </summary>
        /// <param name="args">
        ///            Result from the expressions evaluation. </param>
        /// <param name="sc">
        ///            Result of static context operation. </param>
        /// <exception cref="DynamicError">
        ///             Dynamic error. </exception>
        /// <returns> Result of the fn:dateTime operation. </returns>
        public static ResultSequence dateTime(ICollection args, StaticContext sc)
        {
            ICollection cargs = Function.convert_arguments(args, expected_args());

            // get args
            IEnumerator argiter = cargs.GetEnumerator();

            argiter.MoveNext();
            ResultSequence arg1 = (ResultSequence)argiter.Current;

            argiter.MoveNext();
            ResultSequence arg2 = (ResultSequence)argiter.Current;

            // if either of the parameter is an empty sequence, the result
            // is an empty sequence
            if (arg1 == null || arg2 == null || arg1.empty() || arg2.empty())
            {
                return(ResultBuffer.EMPTY);
            }
            XSDate param1 = (XSDate)arg1.first();
            XSTime param2 = (XSTime)arg2.first();

            Calendar cal = Calendar.getInstance();

            cal.set(param1.year(), param1.month() - 1, param1.day());
            cal.set(Calendar.HOUR_OF_DAY, param2.hour());
            cal.set(Calendar.MINUTE, param2.minute());
            cal.set(Calendar.SECOND, (int)Math.Floor(param2.second()));
            cal.set(Calendar.MILLISECOND, 0);

            XSDuration dateTimeZone = param1.tz();
            XSDuration timeTimeZone = param2.tz();

            if ((dateTimeZone != null && timeTimeZone != null) && !dateTimeZone.StringValue.Equals(timeTimeZone.StringValue))
            {
                // it's an error, if the arguments have different timezones
                throw DynamicError.inconsistentTimeZone();
            }
            else if (dateTimeZone == null && timeTimeZone != null)
            {
                return(new XSDateTime(cal, timeTimeZone));
            }
            else if (dateTimeZone != null && timeTimeZone == null)
            {
                return(new XSDateTime(cal, dateTimeZone));
            }
            else if ((dateTimeZone != null && timeTimeZone != null) && dateTimeZone.StringValue.Equals(timeTimeZone.StringValue))
            {
                return(new XSDateTime(cal, dateTimeZone));
            }
            else
            {
                return(new XSDateTime(cal, null));
            }
        }
コード例 #16
0
        public IHttpActionResult SaveValue(string propertyName, DeviceValue value)
        {
            DeviceRead currentDevice = StaticContext.GetCurrentDevice();

            value.DeviceId     = currentDevice.Id;
            value.PropertyName = propertyName;
            ValuesDomain valuesDomain = new ValuesDomain();

            valuesDomain.SaveValue(value);
            return(Ok());
        }
コード例 #17
0
        public override void Initialize()
        {
            var thisAssembly = Assembly.GetExecutingAssembly();

            IocManager.RegisterAssemblyByConvention(thisAssembly);

            IocManager.IocContainer.AddFacility <LoggingFacility>(f => f.UseAbpLog4Net().WithConfig("log4net.config"));

            StaticContext.SetIocManager(IocManager);

            ServiceCollectionRegistrar.Register(IocManager);
        }
コード例 #18
0
        /// <summary>
        /// Resolve-QName operation.
        /// </summary>
        /// <param name="args">
        ///            Result from the expressions evaluation. </param>
        /// <param name="sc">
        ///            Result of static context operation. </param>
        /// <exception cref="DynamicError">
        ///             Dynamic error. </exception>
        /// <returns> Result of fn:resolve-QName operation. </returns>
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
//ORIGINAL LINE: public static org.eclipse.wst.xml.xpath2.api.ResultSequence resolve_QName(java.util.Collection args, org.eclipse.wst.xml.xpath2.api.StaticContext sc) throws org.eclipse.wst.xml.xpath2.processor.DynamicError
        public static ResultSequence resolve_QName(ICollection args, StaticContext sc)
        {
            //Collection cargs = Function.convert_arguments(args, expected_args());
            ICollection cargs = args;

            // get args
            IEnumerator argiter = cargs.GetEnumerator();

            argiter.MoveNext();
            ResultSequence arg1 = (ResultSequence)argiter.Current;

            if (arg1.empty())
            {
                return(ResultBuffer.EMPTY);
            }

            argiter.MoveNext();
            ResultSequence arg2 = (ResultSequence)argiter.Current;

            string name = ((XSString)arg1.first()).value();

            QName qn = QName.parse_QName(name);

            if (qn == null)
            {
                throw DynamicError.lexical_error(null);
            }

            ElementType xselement = (ElementType)arg2.first();
            Element     element   = (Element)xselement.node_value();

            if (!string.ReferenceEquals(qn.prefix(), null))
            {
                string namespaceURI = element.lookupNamespaceURI(qn.prefix());

                if (string.ReferenceEquals(namespaceURI, null))
                {
                    throw DynamicError.invalidPrefix();
                }
                qn.set_namespace(namespaceURI);
            }
            else
            {
                if (qn.local().Equals(element.LocalName) && element.isDefaultNamespace(element.NamespaceURI))
                {
                    qn.set_namespace(element.NamespaceURI);
                }
            }


            return(qn);
        }
コード例 #19
0
ファイル: BinderHash.cs プロジェクト: caoxk/coapp
        public override int GetHashCode()
        {
            unchecked {
                var tArgNames = ArgNames;

                int result = (tArgNames == null ? 0 : tArgNames.Length * 397);
                result = (result ^ StaticContext.GetHashCode());
                result = (result * 397) ^ DelegateType.GetHashCode();
                result = (result * 397) ^ Context.GetHashCode();
                result = (result * 397) ^ Name.GetHashCode();
                return(result);
            }
        }
コード例 #20
0
        public WaitMenu(StaticContext root, WaitAround mod)
        {
            this.Root    = root;
            this.Mod     = mod;
            this.Buttons = new List <MenuButton>();

            Texture2D upArrowTex   = getTextureFromTileSheet(this.Root.MouseCursors, 12, 64, 64);
            Texture2D downArrowTex = getTextureFromTileSheet(this.Root.MouseCursors, 11, 64, 64);
            Texture2D okButtonTex  = getTextureFromTileSheet(this.Root.MouseCursors, 46, 64, 64);

            Buttons.Add(new MenuButton(64, 64, 0, -1 * ((64 + 10 + 64 + 10 + 64) / 2), new Vector2(-0.25f, 0.5f), this.MenuRect, upArrowTex, upButton));
            Buttons.Add(new MenuButton(64, 64, 0, (-1 * ((64 + 10 + 64 + 10 + 64) / 2)) + 64 + 10, new Vector2(-0.25f, 0.5f), this.MenuRect, downArrowTex, downButton));
            Buttons.Add(new MenuButton(64, 64, 0, (-1 * ((64 + 10 + 64 + 10 + 64) / 2)) + 64 + 10 + 64 + 10, new Vector2(-0.25f, 0.5f), this.MenuRect, okButtonTex, enterButton));
        }
コード例 #21
0
ファイル: SeqType.cs プロジェクト: kaby76/AntlrTreeEditing
        /// <param name="st">
        ///            is a sequence type. </param>
        /// <param name="sc">
        ///            is a static context. </param>
        public SeqType(SequenceType st, StaticContext sc, ResultSequence rs)
        {
            occ = mapSequenceTypeOccurrence(st.occurrence());
            // figure out the item is
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.eclipse.wst.xml.xpath2.processor.internal.ast.ItemType item = st.item_type();
            ItemType item  = st.item_type();
            KindTest ktest = null;

            switch (item.type())
            {
            case ItemType.ITEM:
                typeClass = typeof(AnyType);
                return;

            // XXX IMPLEMENT THIS
            case ItemType.QNAME:
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.eclipse.wst.xml.xpath2.processor.internal.types.AnyAtomicType aat = make_atomic(sc, item.qname());
                AnyAtomicType aat = make_atomic(sc, item.qname());

                Debug.Assert(aat != null);
                anytype = aat;
                if (item.qname().Equals(ANY_ATOMIC_TYPE))
                {
                    typeClass = typeof(AnyAtomicType);
                }
                else
                {
                    typeClass = anytype.GetType();
                }
                return;

            case ItemType.KINDTEST:
                ktest = item.kind_test();
                break;
            }

            if (ktest == null)
            {
                return;
            }

            typeClass = ktest.XDMClassType;
            anytype   = ktest.createTestType(rs, sc);
            nodeName  = ktest.name();
            wild      = ktest.Wild;
        }
コード例 #22
0
        public override AnyType createTestType(ResultSequence rs, StaticContext sc)
        {
            if (name() == null && !wild())
            {
                return(new ElementType());
            }

            Item at = rs.first();

            if (!(at is NodeType))
            {
                return(new ElementType());
            }

            return(createElementType(at, sc));
        }
コード例 #23
0
        public void TestGetStaticTimed()
        {
            var tStaticType = typeof(DateTime);
            var tTarget     = new StaticContext(tStaticType);
            var tWatch      = TimeIt.Go(() => { var tOut = Dynamic.InvokeGet(tTarget, "Today"); }, 500000);
            var tMethodInfo = typeof(DateTime).GetProperty("Today").GetGetMethod();
            var tWatch2     = TimeIt.Go(() =>
            {
                var tOut = tMethodInfo.Invoke(tStaticType, new object[] { });
            }, 500000);

            TestContext.WriteLine("Impromptu: " + tWatch.Elapsed);
            TestContext.WriteLine("Refelection: " + tWatch2.Elapsed);
            TestContext.WriteLine("Impromptu VS Reflection: {0:0.0} x faster", (double)tWatch2.Elapsed.Ticks / tWatch.Elapsed.Ticks);
            Assert.Less(tWatch.Elapsed, tWatch2.Elapsed);
        }
コード例 #24
0
        public void TestMethodStaticMethodValueTimed()
        {
            var    tStaticType = typeof(DateTime);
            var    tTarget     = new StaticContext(tStaticType);
            string tDate       = "01/20/2009";
            var    tWatch      = TimeIt.Go(() => { var tOut = Dynamic.InvokeMember(tTarget, "Parse", tDate); }, 500000);
            var    tMethodInfo = typeof(DateTime).GetMethod("Parse", new[] { typeof(string) });
            var    tWatch2     = TimeIt.Go(() =>
            {
                var tOut = tMethodInfo.Invoke(tStaticType, new object[] { tDate });
            }, 500000);

            TestContext.WriteLine("Impromptu: " + tWatch.Elapsed);
            TestContext.WriteLine("Refelection: " + tWatch2.Elapsed);
            TestContext.WriteLine("Impromptu VS Reflection: {0:0.0} x faster", (double)tWatch2.Elapsed.Ticks / tWatch.Elapsed.Ticks);
            Assert.Less(tWatch.Elapsed, tWatch2.Elapsed);
        }
コード例 #25
0
        public static async void Insert(LogEntity entity)
        {
            if (logEntityList != null)
            {
                logEntityList.Add(entity);

                if (logEntityList.Count() > 900)
                {
                    StaticContext.GetInstance().LogEntity.AddRange(logEntityList);
                    StaticContext.GetInstance().SaveChanges();
                }
            }
            else
            {
                logEntityList = new List <LogEntity>();
            }
        }
コード例 #26
0
        public IEnumerable <Solution> Resolve(Statement st, Solution solution)
        {
            List <Expression> call_arguments = null;
            IVariable         lv             = null;
            DatatypeDecl      datatype       = null;

            InitArgs(st, out lv, out call_arguments);
            Contract.Assert(tcce.OfSize(call_arguments, 1), Error.MkErr(st, 0, 1, call_arguments.Count));

            string argType = GetArgumentType(call_arguments[0] as NameSegment);

            foreach (var result in ResolveExpression(call_arguments[0]))
            {
                if (argType == "Element")
                {
                    var       ns           = result as NameSegment;
                    IVariable originalDecl = StaticContext.GetGlobalVariable(ns.Name);
                    Contract.Assert(originalDecl != null, Error.MkErr(st, 9, ((NameSegment)call_arguments[0]).Name));
                    var datatypeName = originalDecl.Type.ToString();
                    datatype = StaticContext.GetGlobal(datatypeName);
                    var lit = IsInductive(datatypeName, datatype);
                    yield return(AddNewLocal(lv, lit));
                }
                else
                {
                    var ctor = result as DatatypeCtor;
                    Contract.Assert(ctor != null, Error.MkErr(st, 1, "Datatype constructor"));
                    var datatypeName = ctor.EnclosingDatatype.Name;

                    LiteralExpr lit = new LiteralExpr(st.Tok, false);

                    foreach (var formal in ctor.Formals)
                    {
                        if (formal.Type.ToString() == datatypeName)
                        {
                            lit = new LiteralExpr(st.Tok, true);
                            break;
                        }
                    }
                    yield return(AddNewLocal(lv, lit));
                }
            }
        }
コード例 #27
0
        private AnyType createAttrForXSDType(Node node, StaticContext sc)
        {
            Attr attr = (Attr)node;

            TypeModel      typeModel = sc.TypeModel;
            TypeDefinition typedef   = typeModel.getType(attr);

            if (typedef != null)
            {
                if (typedef.derivedFrom(type().@namespace(), type().local(), DerviationTypes))
                {
                    anyType = new AttrType(attr, sc.TypeModel);
                }
            }
            else
            {
                anyType = new AttrType(attr, sc.TypeModel);
            }
            return(anyType);
        }
コード例 #28
0
        void DestroyEverythingInternal(bool immediate)
        {
            if (_sceneContext != null)
            {
                // We need to use DestroyImmediate so that all the IDisposable's etc get processed immediately before
                // next test runs
                if (immediate)
                {
                    GameObject.DestroyImmediate(_sceneContext.gameObject);
                }
                else
                {
                    GameObject.Destroy(_sceneContext.gameObject);
                }

                _sceneContext = null;
            }

            ZenjectTestUtil.DestroyEverythingExceptTestRunner(immediate);
            StaticContext.Clear();
        }
コード例 #29
0
ファイル: SeqType.cs プロジェクト: kaby76/AntlrTreeEditing
        private AnyAtomicType make_atomic(StaticContext sc, QName qname)
        {
            string ns = qname.@namespace();

            var functionLibraries = sc.FunctionLibraries;

            if (!functionLibraries.ContainsKey(ns))
            {
                return(null);
            }

            FunctionLibrary fl = (FunctionLibrary)functionLibraries[ns];

            if (!(fl is ConstructorFL))
            {
                return(null);
            }

            ConstructorFL cfl = (ConstructorFL)fl;

            return(cfl.atomic_type(qname));
        }
コード例 #30
0
        private AnyType createElementForXSDType(NodeList nodeList, StaticContext sc)
        {
            for (int i = 0; i < nodeList.Length; i++)
            {
                Element element = (Element)nodeList.item(i);

                TypeModel      typeModel = sc.TypeModel;
                TypeDefinition typedef   = typeModel.getType(element);
                if (type() == null || typedef == null)
                {
                    anyType = new ElementType(element, typeModel);
                    break;
                }
                else
                {
                    if (typedef.derivedFrom(type().@namespace(), type().local(), DerviationTypes))
                    {
                        anyType = new ElementType(element, typeModel);
                        break;
                    }
                }
            }
            return(anyType);
        }