コード例 #1
0
ファイル: AmlLoader.cs プロジェクト: Paul1nh0/Singularity
            private AcpiObject.AcpiObject LoadTimeEvaluate(AmlParserNode parserNode)
            {
                LoadTimeEvaluateVisitor visitor =
                    new LoadTimeEvaluateVisitor(acpiNamespace, currentPath);

                parserNode.Accept(visitor);
                return(visitor.Result);
            }
コード例 #2
0
ファイル: AmlLoader.cs プロジェクト: Paul1nh0/Singularity
            public override void Visit(AmlParser.DefIfElse defIfElse)
            {
                LoadTimeEvaluateVisitor visitor =
                    new LoadTimeEvaluateVisitor(acpiNamespace, currentPath);

                defIfElse.predicate.integer.Accept(visitor);
                if (visitor.Result.GetAsInt().Value != 0)
                {
                    foreach (TermObj termObj in defIfElse.termList)
                    {
                        termObj.Accept(this);
                    }
                }
                else if (defIfElse.defElse.termList != null)
                {
                    foreach (TermObj termObj in defIfElse.defElse.termList)
                    {
                        termObj.Accept(this);
                    }
                }
            }