public static ARCHETYPE BuildFromAdlParser([email protected]_INTERFACE adlParser, CloneConstraintVisitor visitor) { if (adlParser == null) throw new ArgumentNullException("adlParser must not be null"); adlParser.parse_archetype(); if (!adlParser.parse_succeeded()) throw new ApplicationException("ADL parsing failed\n" + adlParser.status().to_cil()); if (!adlParser.archetype_available()) throw new ApplicationException("ADL archetype unavailable after parsing\n" + adlParser.status().to_cil()); return Build(adlParser.adl_engine().archetype(), visitor); }