コード例 #1
0
  public static AbstractType getType(final DependencyContext context, final int descr) {
    final Type t = Type.getType(context.getValue(descr));

    switch (t.getSort()) {
      case Type.OBJECT:
        return context.getType(
            new ClassType(context.get(StringUtil.replaceChar(t.getClassName(), '.', '/'))));

      case Type.ARRAY:
        return context.getType(new ArrayType(getType(context, t.getElementType())));

      default:
        return context.getType(new PrimitiveType(descr));
    }
  }
コード例 #2
0
  public static Collection<AbstractType> createClassType(
      final DependencyContext context, final String[] args, final Collection<AbstractType> acc) {
    if (args != null) {
      for (String a : args) {
        acc.add(createClassType(context, context.get(a)));
      }
    }

    return acc;
  }
コード例 #3
0
  public void toStream(final DependencyContext context, final PrintStream stream) {
    final OrderProvider op = new OrderProvider(context);

    forEachEntry(
        new TIntIntProcedure() {
          @Override
          public boolean execute(final int a, final int b) {
            op.register(a);
            return true;
          }
        });

    final int[] keys = op.get();

    for (final int a : keys) {
      final int b = get(a);

      stream.print("  ");
      stream.print(context.getValue(a));
      stream.print(" -> ");
      stream.println(context.getValue(b));
    }
  }
コード例 #4
0
 @Override
 public String getDescr(final DependencyContext context) {
   return context.getValue(type);
 }
コード例 #5
0
 public static AbstractType getType(final DependencyContext context, final Type t) {
   return getType(context, context.get(t.getDescriptor()));
 }
コード例 #6
0
 public static ClassType createClassType(final DependencyContext context, final int s) {
   return (ClassType) context.getType(new ClassType(s));
 }
コード例 #7
0
 @Override
 public String getDescr(final DependencyContext context) {
   return "L" + context.getValue(className) + ";";
 }