package org.jetbrains.mps.samples.Money.structure; /*Generated by MPS */ import jetbrains.mps.smodel.runtime.BaseStructureAspectDescriptor; import jetbrains.mps.smodel.runtime.ConceptDescriptor; import java.util.Collection; import java.util.Arrays; import org.jetbrains.annotations.Nullable; import jetbrains.mps.smodel.adapter.ids.SConceptId; import org.jetbrains.mps.openapi.language.SAbstractConcept; import jetbrains.mps.smodel.runtime.impl.ConceptDescriptorBuilder2; import jetbrains.mps.smodel.runtime.ConceptKind; import jetbrains.mps.smodel.runtime.StaticScope; public class StructureAspectDescriptor extends BaseStructureAspectDescriptor { /*package*/ final ConceptDescriptor myConceptConvertTo = createDescriptorForConvertTo(); /*package*/ final ConceptDescriptor myConceptCurrencyDefTable = createDescriptorForCurrencyDefTable(); /*package*/ final ConceptDescriptor myConceptCurrencyUnit = createDescriptorForCurrencyUnit(); /*package*/ final ConceptDescriptor myConceptCurrentStockPrice = createDescriptorForCurrentStockPrice(); /*package*/ final ConceptDescriptor myConceptGetAmount = createDescriptorForGetAmount(); /*package*/ final ConceptDescriptor myConceptGetCurrency = createDescriptorForGetCurrency(); /*package*/ final ConceptDescriptor myConceptMoneyLiteral = createDescriptorForMoneyLiteral(); /*package*/ final ConceptDescriptor myConceptMoneyType = createDescriptorForMoneyType(); /*package*/ final ConceptDescriptor myConceptMovingAverage = createDescriptorForMovingAverage(); /*package*/ final ConceptDescriptor myConceptStockSymbol = createDescriptorForStockSymbol(); private final LanguageConceptSwitch myConceptIndex; public StructureAspectDescriptor() { myConceptIndex = new LanguageConceptSwitch(); } @Override public Collection<ConceptDescriptor> getDescriptors() { return Arrays.asList(myConceptConvertTo, myConceptCurrencyDefTable, myConceptCurrencyUnit, myConceptCurrentStockPrice, myConceptGetAmount, myConceptGetCurrency, myConceptMoneyLiteral, myConceptMoneyType, myConceptMovingAverage, myConceptStockSymbol); } @Override @Nullable public ConceptDescriptor getDescriptor(SConceptId id) { switch (myConceptIndex.index(id)) { case LanguageConceptSwitch.ConvertTo: return myConceptConvertTo; case LanguageConceptSwitch.CurrencyDefTable: return myConceptCurrencyDefTable; case LanguageConceptSwitch.CurrencyUnit: return myConceptCurrencyUnit; case LanguageConceptSwitch.CurrentStockPrice: return myConceptCurrentStockPrice; case LanguageConceptSwitch.GetAmount: return myConceptGetAmount; case LanguageConceptSwitch.GetCurrency: return myConceptGetCurrency; case LanguageConceptSwitch.MoneyLiteral: return myConceptMoneyLiteral; case LanguageConceptSwitch.MoneyType: return myConceptMoneyType; case LanguageConceptSwitch.MovingAverage: return myConceptMovingAverage; case LanguageConceptSwitch.StockSymbol: return myConceptStockSymbol; default: return null; } } /*package*/ int internalIndex(SAbstractConcept c) { return myConceptIndex.index(c); } private static ConceptDescriptor createDescriptorForConvertTo() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("org.jetbrains.mps.samples.Money", "ConvertTo", 0x662a9f2b58024d16L, 0x955872c65c7a681eL, 0x18d8e0833b34209aL); b.class_(false, false, false); b.parent(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x116b46ac030L); b.origin("r:cd29712f-cf1b-4f19-90a2-4ce86af0d5f6(org.jetbrains.mps.samples.Money.structure)/1790427706118381722"); b.prop("targetCurrency", 0x18d8e0833b34345fL, "1790427706118386783"); b.kind(ConceptKind.NORMAL, StaticScope.NONE); b.alias("convert to"); return b.create(); } private static ConceptDescriptor createDescriptorForCurrencyDefTable() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("org.jetbrains.mps.samples.Money", "CurrencyDefTable", 0x662a9f2b58024d16L, 0x955872c65c7a681eL, 0x3210b276d1443596L); b.class_(false, false, true); b.origin("r:cd29712f-cf1b-4f19-90a2-4ce86af0d5f6(org.jetbrains.mps.samples.Money.structure)/3607579524910560662"); b.aggregate("units", 0x3210b276d144359cL).target(0x662a9f2b58024d16L, 0x955872c65c7a681eL, 0x3210b276d1443597L).optional(true).ordered(true).multiple(true).origin("3607579524910560668").done(); return b.create(); } private static ConceptDescriptor createDescriptorForCurrencyUnit() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("org.jetbrains.mps.samples.Money", "CurrencyUnit", 0x662a9f2b58024d16L, 0x955872c65c7a681eL, 0x3210b276d1443597L); b.class_(false, false, false); b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L); b.origin("r:cd29712f-cf1b-4f19-90a2-4ce86af0d5f6(org.jetbrains.mps.samples.Money.structure)/3607579524910560663"); return b.create(); } private static ConceptDescriptor createDescriptorForCurrentStockPrice() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("org.jetbrains.mps.samples.Money", "CurrentStockPrice", 0x662a9f2b58024d16L, 0x955872c65c7a681eL, 0x3786e3f4808999c3L); b.class_(false, false, false); b.super_("jetbrains.mps.baseLanguage.structure.Expression", 0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0xf8c37f506fL); b.origin("r:cd29712f-cf1b-4f19-90a2-4ce86af0d5f6(org.jetbrains.mps.samples.Money.structure)/4001135958233291203"); b.aggregate("symbol", 0x3786e3f480b0926aL).target(0x662a9f2b58024d16L, 0x955872c65c7a681eL, 0x3786e3f480a9b18aL).optional(false).ordered(true).multiple(false).origin("4001135958235845226").done(); b.alias("current stock price"); return b.create(); } private static ConceptDescriptor createDescriptorForGetAmount() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("org.jetbrains.mps.samples.Money", "GetAmount", 0x662a9f2b58024d16L, 0x955872c65c7a681eL, 0x4b9a2fe55913c339L); b.class_(false, false, false); b.parent(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x116b46ac030L); b.origin("r:cd29712f-cf1b-4f19-90a2-4ce86af0d5f6(org.jetbrains.mps.samples.Money.structure)/5447719361346519865"); b.kind(ConceptKind.NORMAL, StaticScope.NONE); b.alias("amount"); return b.create(); } private static ConceptDescriptor createDescriptorForGetCurrency() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("org.jetbrains.mps.samples.Money", "GetCurrency", 0x662a9f2b58024d16L, 0x955872c65c7a681eL, 0x18d8e0833b32f1b1L); b.class_(false, false, false); b.parent(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x116b46ac030L); b.origin("r:cd29712f-cf1b-4f19-90a2-4ce86af0d5f6(org.jetbrains.mps.samples.Money.structure)/1790427706118304177"); b.kind(ConceptKind.NORMAL, StaticScope.NONE); b.alias("currency"); return b.create(); } private static ConceptDescriptor createDescriptorForMoneyLiteral() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("org.jetbrains.mps.samples.Money", "MoneyLiteral", 0x662a9f2b58024d16L, 0x955872c65c7a681eL, 0x4b9a2fe559135132L); b.class_(false, false, false); b.super_("jetbrains.mps.baseLanguage.structure.Expression", 0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0xf8c37f506fL); b.origin("r:cd29712f-cf1b-4f19-90a2-4ce86af0d5f6(org.jetbrains.mps.samples.Money.structure)/5447719361346490674"); b.prop("amount", 0x4b9a2fe559135183L, "5447719361346490755"); b.associate("unit", 0x3210b276d14435a8L).target(0x662a9f2b58024d16L, 0x955872c65c7a681eL, 0x3210b276d1443597L).optional(false).origin("3607579524910560680").done(); b.kind(ConceptKind.NORMAL, StaticScope.NONE); b.alias("money"); return b.create(); } private static ConceptDescriptor createDescriptorForMoneyType() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("org.jetbrains.mps.samples.Money", "MoneyType", 0x662a9f2b58024d16L, 0x955872c65c7a681eL, 0x4b9a2fe55913516aL); b.class_(false, false, false); b.super_("jetbrains.mps.baseLanguage.structure.Type", 0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0xf8c37f506dL); b.origin("r:cd29712f-cf1b-4f19-90a2-4ce86af0d5f6(org.jetbrains.mps.samples.Money.structure)/5447719361346490730"); b.kind(ConceptKind.INTERFACE, StaticScope.NONE); b.alias("Money"); return b.create(); } private static ConceptDescriptor createDescriptorForMovingAverage() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("org.jetbrains.mps.samples.Money", "MovingAverage", 0x662a9f2b58024d16L, 0x955872c65c7a681eL, 0x3786e3f480b1c19aL); b.class_(false, false, false); b.super_("jetbrains.mps.baseLanguage.structure.Expression", 0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0xf8c37f506fL); b.origin("r:cd29712f-cf1b-4f19-90a2-4ce86af0d5f6(org.jetbrains.mps.samples.Money.structure)/4001135958235922842"); b.prop("period", 0x3786e3f480b1c19bL, "4001135958235922843"); b.aggregate("symbol", 0x3786e3f480b1c6d0L).target(0x662a9f2b58024d16L, 0x955872c65c7a681eL, 0x3786e3f480a9b18aL).optional(false).ordered(true).multiple(false).origin("4001135958235924176").done(); b.alias("moving average"); return b.create(); } private static ConceptDescriptor createDescriptorForStockSymbol() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("org.jetbrains.mps.samples.Money", "StockSymbol", 0x662a9f2b58024d16L, 0x955872c65c7a681eL, 0x3786e3f480a9b18aL); b.class_(false, false, false); b.origin("r:cd29712f-cf1b-4f19-90a2-4ce86af0d5f6(org.jetbrains.mps.samples.Money.structure)/4001135958235394442"); b.prop("symbol", 0x3786e3f480afac5bL, "4001135958235786331"); b.alias("symbol"); return b.create(); } }